Frage

Aus Sicherheitsgründen (Ich bin ein Entwickler) Ich habe keine Befehlszeile Zugriff auf unsere Produktionsserver, wo die Protokolldateien geschrieben werden. I können , aber diese Log-Dateien über HTTP zuzugreifen. Gibt es ein Dienstprogramm in der Art von „tail -f“, die „folgen“ kann eine einfache Textdatei mit nur HTTP?

War es hilfreich?

Lösung

Sie können dies tun, wenn der HTTP-Server Anfragen akzeptiert Teile einer Ressource zurück. Wenn beispielsweise eine HTTP-Anfrage enthält den Header:

  

Reichweite: Bytes = -500

die Antwort werden die letzten 500 Bytes der Ressource enthalten. Sie können, dass holen und dann in Linien analysieren, usw. Ich weiß nicht von irgendwelchen fertigter Kunden, die dies für Sie tun -. Ich ein Drehbuch schreiben würde den Job zu erledigen

Sie können mit Hurl mit Headern experimentieren (aus öffentlich zugänglichen Ressourcen).

Andere Tipps

Ich schrieb einen Bash-Skript für den gleichen Zweck. Sie können es finden hier https://github.com/maksim07/url-tail

Sie können kleinen Java-Dienstprogramm verwenden, um Log-Datei über HTTP mit Apache HTTP-Bibliothek zu lesen.

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
    }

Sie können mit PsExec auszuführen Befehl auf dem Remote-Computer. Der Befehl tail für Windows kann unter http://tailforwin32.sourceforge.net/

finden

Wenn es sein HTTP verfügt, können Sie einen geringen Gewicht Web-Service schreiben, die leicht zu erreichen. zum Beispiel Text innerhalb einer bestimmten Datei von Zeile 0 lesen 200 auszukleiden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top