質問

セキュリティ上の理由から(私は開発者です)、ログファイルが書き込まれる実稼働サーバーへのコマンドラインアクセスがありません。ただし、これらのログファイルにはHTTPでアクセスできます 。 「tail -f」という方法でユーティリティはありますか? 「従う」ことができるHTTPのみを使用したプレーンテキストファイルですか?

役に立ちましたか?

解決

HTTPサーバーがリソースの一部を返すリクエストを受け入れる場合、これを行うことができます。たとえば、HTTPリクエストにヘッダーが含まれる場合:

  

範囲:バイト= -500

応答には、リソースの最後の500バイトが含まれます。これを取得して、行などに解析することができます。これを行うための既製のクライアントは知りません-仕事をするスクリプトを書きます。

Hurl を使用して、(公開されているリソースから)ヘッダーを試すことができます。

他のヒント

同じ目的でbashスクリプトを書きました。ここで見つけることができます https://github.com/maksim07/url-tail

小さなJavaユーティリティを使用して、Apache HTTPライブラリを使用してHttp経由でログファイルを読み取ることができます。

HttpClient client = HttpClientBuilder.create().build();
    HttpGet request = new HttpGet(uri);
    HttpResponse response = client.execute(request);
    BufferedReader rd = new BufferedReader(new InputStreamReader(
            response.getEntity().getContent()));
    String s = "";
    while ((s = rd.readLine()) != null) {
       //Process the line
    }

PsExec を使用して、リモートコンピューターでコマンドを実行できます。 Windowsのテールコマンドは、 http://tailforwin32.sourceforge.net/

にあります。

HTTPである必要がある場合は、軽量のWebサービスを作成して簡単に実現できます。 たとえば、指定されたファイル内の0行目から200行目までのテキストを読み取ります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top