Logstash - API monitorujące

Logstash oferuje interfejsy API do monitorowania jego wydajności. Te interfejsy API monitorowania wyodrębniają wskaźniki czasu wykonywania dotyczące Logstash.

Node Info API

Ten interfejs API służy do uzyskiwania informacji o węzłach Logstash. Zwraca informacje o systemie operacyjnym, potoku Logstash i JVM w formacie JSON.

Możesz wyodrębnić informacje, wysyłając plik get żądanie do Logstash przy użyciu następującego adresu URL -

GET http://localhost:9600/_node?pretty

Odpowiedź

Poniżej byłaby odpowiedź interfejsu Node Info API.

{
   "host" : "Dell-PC",
   "version" : "5.0.1",
   "http_address" : "127.0.0.1:9600",
   
   "pipeline" : {
      "workers" : 4,
      "batch_size" : 125,
      "batch_delay" : 5,
      "config_reload_automatic" : false,
      "config_reload_interval" : 3
   },
   "os" : {
      "name" : "Windows 7",
      "arch" : "x86",
      "version" : "6.1",
      "available_processors" : 4
   },
   "jvm" : {
      "pid" : 312,
      "version" : "1.8.0_111",
      "vm_name" : "Java HotSpot(TM) Client VM",
      "vm_version" : "1.8.0_111",
      "vm_vendor" : "Oracle Corporation",
      "start_time_in_millis" : 1483770315412,
      
      "mem" : {
         "heap_init_in_bytes" : 16777216,
         "heap_max_in_bytes" : 1046937600,
         "non_heap_init_in_bytes" : 163840,
         "non_heap_max_in_bytes" : 0
      },
      "gc_collectors" : [ "ParNew", "ConcurrentMarkSweep" ]
   }
}

Możesz również uzyskać szczegółowe informacje o rurociągu, systemie operacyjnym i JVM, po prostu dodając ich nazwy w adresie URL.

GET http://localhost:9600/_node/os?pretty
GET http://localhost:9600/_node/pipeline?pretty
GET http://localhost:9600/_node/jvm?pretty

API informacji o wtyczkach

To API służy do uzyskiwania informacji o zainstalowanych wtyczkach w Logstash. Możesz odzyskać te informacje, wysyłając żądanie pobrania na adres URL podany poniżej -

GET http://localhost:9600/_node/plugins?pretty

Odpowiedź

Poniżej byłaby odpowiedź interfejsu API informacji o wtyczkach.

{
   "host" : "Dell-PC",
   "version" : "5.0.1",
   "http_address" : "127.0.0.1:9600",
   "total" : 95,
   "plugins" : [ {
      "name" : "logstash-codec-collectd",
      "version" : "3.0.2"
   },
   {
      "name" : "logstash-codec-dots",
      "version" : "3.0.2"
   },
   {
      "name" : "logstash-codec-edn",
      "version" : "3.0.2"
   },
   {
      "name" : "logstash-codec-edn_lines",
      "version" : "3.0.2"
   },
   ............
}

Node Stats API

Ten interfejs API służy do wyodrębniania statystyk Logstash (pamięć, proces, JVM, potok) w obiektach JSON. Możesz odzyskać te informacje, wysyłając żądanie pobierania na adresy URL wymienione poniżej -

GET http://localhost:9600/_node/stats/?pretty
GET http://localhost:9600/_node/stats/process?pretty
GET http://localhost:9600/_node/stats/jvm?pretty
GET http://localhost:9600/_node/stats/pipeline?pretty

Hot Threads API

Ten interfejs API pobiera informacje o gorących wątkach w Logstash. Gorące wątki to wątki Java, które mają wysokie użycie procesora i działają dłużej niż normalny czas wykonywania. Możesz odzyskać te informacje, wysyłając żądanie pobrania na adres URL podany poniżej -

GET http://localhost:9600/_node/hot_threads?pretty

Użytkownik może skorzystać z następującego adresu URL, aby uzyskać odpowiedź w bardziej czytelnej formie.

GET http://localhost:9600/_node/hot_threads?human = true