Upravljanje zadacima veliki je faktor za svakog administratora, a kada radite sa složenim sustavom kao što je Elasticsearch, morat ćete malo nadzirati zadatke.”
Dopustite nam da pokrijemo što ovaj API podrazumijeva i kako vam može pomoći kao administratoru sustava.
NAPOMENA: Ovisno o konfiguraciji vašeg klastera i sigurnosnim postavkama, ovaj API može zahtijevati privilegije nadgledanja.
Sintaksa zahtjeva
Sljedeće prikazuje sintaksu za slanje zahtjeva API-ju za upravljanje zadacima.
DOBITI / _zadaci /< task_id >
DOBITI / _zadaci
Nakon što zatražite API, naredba bi trebala vratiti detaljne informacije o trenutnim zadacima ili zadatku s navedenim ID-om.
Parametri staze zahtjeva
Zahtjev podržava jedan parametar staze:
-
– jedinstvena ID vrijednost za zadatak čije podatke želite dohvatiti. ID zadatka slijedi obrazac node_id:task_number.
Parametri upita zahtjeva
Da biste prilagodili ponašanje i povratni format upita, možete odrediti sljedeće parametre:
- Radnje – ovo definira skup akcija koje se koriste za ograničavanje zahtjeva. Ovdje možete definirati akcije kao popis vrijednosti odvojenih zarezima.
- Detaljno – ovo je Booleov parametar koji definira prikazuje li zahtjev detaljne informacije o oporavcima fragmenata ili ne. Zadana je opcija false
- Group_by – postavlja ključeve koji se koriste za grupiranje zadataka iz odgovora. Prihvaćene vrijednosti uključuju:
- Čvorovi – ID čvora.
- Roditelji – ID roditelja.
- Čvor – ne grupiraj.
- Node_id – definira čvor ili popis čvorova iz kojih se dohvaćaju informacije.
- parent_task_id – definira nadređeni ID koji se koristi za filtriranje informacija odgovora. Za prikaz svih zadataka navedite parent_task_id kao -1.
- master_timeout – određuje trajanje u kojem zahtjev čeka na vezu s glavnim čvorom. Ako zahtjev ne dobije odgovor od mastera nakon što istekne trajanje master_timeout, ne uspijeva i vraća pogrešku. Zadano trajanje postavljeno je na 30 sekundi.
- Timeout – slično kao master_timeout, ali ova vrijednost definira trajanje tijekom kojeg treba čekati odgovor.
- Wait_for_completion – ako je točno, zahtjev je blokiran dok se operacija ne završi. Zadana vrijednost je false.
Odgovor
Ako bude uspješan, zahtjev će vratiti detaljne informacije o navedenom zadatku ili zadacima. Ako zadatak nije pronađen, zahtjev vraća kod statusa 404.
Primjer upotrebe
Sljedeći primjer pokazuje kako koristiti API za upravljanje zadacima za prikaz informacija o svim zadacima koji se izvode u klasteru (svi čvorovi).
kovrčati -XGET “http://localhost:9200/_tasks” -H 'kbn-xsrf: izvješćivanje'Zahtjev bi trebao pružiti informacije o zadacima u klasteru, kao što je prikazano u donjem izlazu:
Primjer 2
U sljedećem primjeru koristimo parametar čvorova da ograničimo odgovor samo na zadatke koji se izvode u čvoru slave_1
kovrčati -XGET “http://localhost:9200/_tasks?nodes=slave_1” -H 'kbn-xsrf: izvješćivanje'Ovo bi trebalo vratiti zadatke u navedenom čvoru kao što je prikazano u donjem izlazu:
'zadaci' : {'Fit416fGR1GJefJxOxLurw:1651265' : {
'čvor' : 'rob_1' ,
'iskaznica' : 1651265 ,
'tip' : 'prijevoz' ,
'akcijski' : 'indeksi:monitor/flota/globalne_kontrolne točke' ,
'vrijeme_početka_u_milisekundama' : 1664214054489 ,
'vrijeme_izvođanja_u_nano' : 94450056094 ,
'opozivo' : lažno,
'zaglavlja' : {
'X-elastično-podrijetlo-proizvoda' : 'flota'
}
}
Primjer 3
U primjeru 3 koristimo API za upravljanje zadacima za prikaz informacija o zadatku s navedenim ID-om:
kovrčati -XGET “http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310” -H 'kbn-xsrf: izvješćivanje'Podaci o izlaznom zadatku su prikazani:
Primjer 4
Za prikaz detaljnih informacija o zadatku dodajte detaljni parametar zahtjevu kao što je prikazano:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
kovrča -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
Ovo bi trebalo pružiti dodatne informacije o zadacima:
Zaključak
Ovaj je post istražen kako koristiti API za upravljanje zadacima u Elasticsearchu. Ovaj nam API omogućuje dohvaćanje informacija o trenutno izvršavajućim zadacima u klasteru.
Živjeli!! i uhvatit ću te u sljedećem.