Ich möchte ein Codec
Plugin schreiben, um LogStash zu ermöglichen, ein binäres Datenformat zu dekodieren.Was ist das `data` Objekt, das an die` decode` Methode des Codecs übergeben wird?
The official documentation for writing a Codec
zeigt, dass ich eine decode
Methode definieren muss, die einen einzelnen Parameter akzeptiert: eine Variable mit dem Namen data
.
Ich bin neu in LogStash und Ruby. Da ich hauptsächlich mit statisch getippten Sprachen gearbeitet habe, bin ich mir nicht sicher, wie ich mehr über die Variable data
erfahren kann. Ich nehme an, dass es analog zu einem Objekt InputStream
ist, das mir erlaubt, Daten zu lesen, wie es verfügbar wird, aber ich bin nicht sicher.
Fragen:
- Welche Art ist die
data
Objekt? Welche Methoden hat es? - Wie untersuchen Ruby-Entwickler typischerweise solche Variablen? Ich bin mir nicht sicher, ob ich einen Weg finde, es herauszufinden, ohne ein Skelett-Plugin zu schreiben und eine String-Repräsentation von
data
auf STDOUT zu speichern.
Vielen Dank!