„Elasticsearch“ užduočių valdymas

Elasticsearch Uzduociu Valdymas



„Šiame įraše apžvelgsime vieną iš Elasticsearch eksperimentinių API (šio vadovo rašymo metu), kuri leidžia peržiūrėti informaciją apie šiuo metu vykdomas užduotis klasteryje.

Užduočių valdymas yra didžiulis veiksnys bet kuriam administratoriui, o dirbant su sudėtinga sistema, tokia kaip Elasticsearch, turėsite atlikti tam tikrą užduočių stebėjimą.

Leiskite mums aptarti, ką reiškia ši API ir kaip ji gali padėti jums kaip sistemos administratoriui.







PASTABA: atsižvelgiant į jūsų grupės konfigūraciją ir saugos nustatymus, šiai API gali prireikti monitoriaus privilegijų.



Užklausa sintaksė

Toliau parodyta užklausos siuntimo į užduočių valdymo API sintaksė.



GAUTI / _užduotys /< užduoties_id >

GAUTI / _užduotys

Kai pateiksite API užklausą, komanda turėtų pateikti išsamią informaciją apie dabartines užduotis arba užduotį su nurodytu ID.





Kelio parametrų užklausa

Užklausa palaiko vieną kelio parametrą:

  • – unikali užduoties, kurios informaciją norite gauti, ID reikšmė. Užduoties ID seka šabloną node_id:task_number.

Užklausos parametrų užklausa

Norėdami tinkinti užklausos veikimą ir grąžinimo formatą, galite nurodyti šiuos parametrus:



  1. Veiksmai – apibrėžia veiksmų, naudojamų užklausai apriboti, rinkinį. Čia galite apibrėžti veiksmus kaip kableliais atskirtų reikšmių sąrašą.
  2. Išsamus – tai Būlio parametras, apibrėžiantis, ar užklausoje rodoma išsami informacija apie skeveldrų atkūrimą, ar ne. Pagal numatytuosius nustatymus ši parinktis yra klaidinga
  3. Group_by – nustato raktus, naudojamus grupuojant užduotis iš atsakymo. Priimamos vertės apima:
    • Mazgai – mazgo ID.
    • Tėvai – tėvų ID.
    • Mazgas – negrupuoti.
  4. Node_id – apibrėžia mazgą arba mazgų sąrašą, iš kurio reikia gauti informaciją.
  5. parent_task_id – apibrėžia pirminį ID, naudojamą atsakymo informacijai filtruoti. Norėdami rodyti visas užduotis, nurodykite tėvų_užduočių_id kaip -1.
  6. master_timeout – nurodo trukmę, per kurią užklausa laukia ryšio su pagrindiniu mazgu. Jei pasibaigus master_timeout trukmei užklausa negauna atsakymo iš pagrindinio įrenginio, ji nepavyksta ir pateikia klaidą. Numatytoji trukmė nustatyta į 30 sek.
  7. Timeout – panašus į master_timeout, tačiau ši reikšmė apibrėžia trukmę, per kurią reikia laukti atsakymo.
  8. Wait_for_completion – jei tiesa, užklausa blokuojama, kol operacija bus baigta. Pagal numatytuosius nustatymus klaidinga.

Atsakymas

Jei užklausa bus sėkminga, bus pateikta išsami informacija apie nurodytą užduotį ar užduotis. Jei užduotis nerasta, užklausa grąžina 404 būsenos kodą.

Naudojimo pavyzdys

Šiame pavyzdyje parodyta, kaip naudoti užduočių valdymo API, kad būtų rodoma informacija apie visas klasteryje vykdomas užduotis (visus mazgus).

garbanos -XGET „http://localhost:9200/_tasks“ -H 'kbn-xsrf: ataskaitų teikimas'

Užklausoje turėtų būti pateikta informacija apie užduotis klasteryje, kaip parodyta toliau pateiktoje išvestyje:

2 pavyzdys

Kitame pavyzdyje mes naudojame mazgų parametrą, kad apribotume atsakymą tik tomis užduotimis, kurios vykdomos mazge slave_1

garbanos -XGET „http://localhost:9200/_tasks?nodes=slave_1“ -H 'kbn-xsrf: ataskaitų teikimas'

Tai turėtų grąžinti užduotis nurodytame mazge, kaip parodyta toliau pateiktame išvestyje:

'užduotys' : {
„Fit416fGR1GJefJxOxLurw:1651265“ : {
'mazgas' : 'vergas_1' ,
'id' : 1651265 ,
'tipas' : 'transportas' ,
'veiksmas' : 'indeksai:monitor/fleet/global_checkpoints' ,
'start_time_in_millis' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'atšaukiamas' : klaidinga,
'antraštės' : {
„X-elastinis-produkto kilmė“ : 'laivynas'
}
}

3 pavyzdys

3 pavyzdyje mes naudojame užduočių valdymo API, kad parodytume informaciją apie užduotį su nurodytu ID:

garbanos -XGET „http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310“ -H 'kbn-xsrf: ataskaitų teikimas'

Išvesties užduoties informacija yra tokia, kaip parodyta:

4 pavyzdys

Norėdami parodyti išsamią informaciją apie užduotį, pridėkite išsamų parametrą prie užklausos, kaip parodyta:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
garbanos -XGET „http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
Tai turėtų suteikti papildomos informacijos apie užduotis:

Išvada

Šis įrašas buvo ištirtas kaip naudoti užduočių valdymo API Elasticsearch. Ši API leidžia mums gauti informaciją apie šiuo metu klasteryje vykdomas užduotis.

Į sveikatą!! Ir aš tave pagausiu kitame.