Upravljanje opravil Elasticsearch

Upravljanje Opravil Elasticsearch



»V tej objavi si bomo ogledali enega od eksperimentalnih API-jev Elasticsearch (v času pisanja tega priročnika), ki nam omogoča ogled informacij o trenutno izvajajočih se nalogah v gruči.

Upravljanje opravil je velik dejavnik za vsakega skrbnika in ko delate s kompleksnim sistemom, kot je Elasticsearch, boste morali nekaj spremljati opravila.«

Naj pojasnimo, kaj ta API vključuje in kako vam lahko pomaga kot sistemskemu skrbniku.







OPOMBA: Glede na konfiguracijo vaše gruče in varnostne nastavitve lahko ta API zahteva privilegije nadzornika.



Sintaksa zahteve

V nadaljevanju je prikazana sintaksa za pošiljanje zahteve API-ju za upravljanje opravil.



DOBITI / _naloge /< task_id >

DOBITI / _naloge

Ko zahtevate API, mora ukaz vrniti podrobne informacije o trenutnih opravilih ali opravilu z navedenim ID-jem.





Parametri poti zahteve

Zahteva podpira en parameter poti:

  • – edinstvena vrednost ID-ja za nalogo, katere podatke želite pridobiti. ID opravila sledi vzorcu node_id:task_number.

Parametri poizvedbe zahteve

Če želite prilagoditi vedenje in povratno obliko poizvedbe, lahko podate naslednje parametre:



  1. Dejanja – to definira nabor dejanj, ki se uporabljajo za omejevanje zahteve. Tukaj lahko definirate dejanja kot seznam vrednosti, ločenih z vejicami.
  2. Podrobno – to je logični parameter, ki določa, ali zahteva prikazuje podrobne informacije o obnovitvah drobcev ali ne. Ta možnost je privzeto nastavljena na false
  3. Group_by – nastavi ključe, ki se uporabljajo za združevanje nalog iz odgovora. Sprejete vrednosti vključujejo:
    • Vozlišča – ID vozlišča.
    • Starši – ID starša.
    • Vozlišče – ​​ne združuj.
  4. Node_id – definira vozlišče ali seznam vozlišč, iz katerih je treba pridobiti informacije.
  5. parent_task_id – definira nadrejeni ID, ki se uporablja za filtriranje odgovornih informacij. Če želite prikazati vsa opravila, podajte parent_task_id kot -1.
  6. master_timeout – določa trajanje, v katerem zahteva čaka na povezavo z glavnim vozliščem. Če zahteva ne prejme odgovora od nadrejenega po preteku trajanja master_timeout, ne uspe in vrne napako. Privzeto trajanje je nastavljeno na 30 sekund.
  7. Časovna omejitev – podobno kot master_timeout, vendar ta vrednost določa trajanje čakanja na kateri koli odgovor.
  8. Wait_for_completion – če je res, je zahteva blokirana, dokler se operacija ne konča. Privzeto je false.

Odziv

Če je uspešna, bo zahteva vrnila podrobne informacije o določenem opravilu ali opravilih. Če naloga ni najdena, zahteva vrne kodo stanja 404.

Primer uporabe

Naslednji primer prikazuje, kako uporabiti API za upravljanje opravil za prikaz informacij o vseh opravilih, ki se izvajajo v gruči (vsa vozlišča).

curl -XGET “http://localhost:9200/_tasks” -H 'kbn-xsrf: poročanje'

Zahteva mora zagotoviti informacije o nalogah v gruči, kot je prikazano v spodnjem izhodu:

Primer 2

V naslednjem primeru uporabimo parameter vozlišč, da omejimo odziv samo na naloge, ki se izvajajo v vozlišču slave_1

curl -XGET “http://localhost:9200/_tasks?nodes=slave_1” -H 'kbn-xsrf: poročanje'

To bi moralo vrniti naloge v navedenem vozlišču, kot je prikazano v spodnjem izhodu:

'naloge' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'vozlišče' : 'suženj_1' ,
'id' : 1651265 ,
'tip' : 'prevoz' ,
'akcija' : 'indeksi:monitor/flota/globalne_kontrolne točke' ,
'začetni_čas_v_milisekundah' : 1664214054489 ,
'čas_delovanja_v_nano' : 94450056094 ,
'preklicno' : napačno,
'glave' : {
'X-elastični-izdelek-poreklo' : 'flota'
}
}

Primer 3

V 3. primeru uporabljamo API za upravljanje opravil za prikaz informacij o opravilu z navedenim ID-jem:

curl -XGET “http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310” -H 'kbn-xsrf: poročanje'

Informacije o izhodni nalogi so prikazane:

Primer 4

Če želite prikazati podrobne informacije o opravilu, dodajte podroben parameter v zahtevo, kot je prikazano:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
curl -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
To bi moralo zagotoviti dodatne informacije o nalogah:

Zaključek

Ta objava je raziskana kako uporabljati API za upravljanje opravil v Elasticsearch. Ta API nam omogoča pridobivanje informacij o trenutno izvajajočih se nalogah v gruči.

Na zdravje!! & ujel te bom v naslednjem.