Elasticsearch Task Management

Elasticsearch Task Management



'Tässä viestissä tarkastelemme yhtä Elasticsearchin kokeellisesta API:sta (tätä opasta kirjoitettaessa), jonka avulla voimme tarkastella tietoja klusterin tällä hetkellä käynnissä olevista tehtävistä.

Tehtävien hallinta on valtava tekijä jokaiselle järjestelmänvalvojalle, ja kun työskentelet monimutkaisen järjestelmän, kuten Elasticsearchin, kanssa, sinun on seurattava tehtäviä.

Kerromme, mitä tämä API sisältää ja kuinka se voi auttaa sinua järjestelmänvalvojana.







HUOMAUTUS: Riippuen klusterin kokoonpanosta ja suojausasetuksista, tämä sovellusliittymä saattaa vaatia valvojan oikeuksia.



Pyydä syntaksia

Seuraavassa näkyy syntaksi pyynnön lähettämiseksi tehtävänhallinnan API:lle.



SAADA / _tehtävät /< tehtävän_tunnus >

SAADA / _tehtävät

Kun pyydät API:ta, komennon pitäisi palauttaa yksityiskohtaiset tiedot nykyisistä tehtävistä tai tehtävästä määritetyllä tunnuksella.





Pyydä polkuparametreja

Pyyntö tukee yhtä polkuparametria:

  • – yksilöllinen tunnusarvo tehtävälle, jonka tiedot haluat hakea. Tehtävän tunnus noudattaa mallia solmutunnus:tehtävän_numero.

Pyydä kyselyparametreja

Voit mukauttaa kyselyn toimintaa ja palautusmuotoa määrittämällä seuraavat parametrit:



  1. Toiminnot – tämä määrittää joukon toimintoja, joita käytetään pyynnön rajoittamiseen. Tässä voit määrittää toiminnot pilkuilla eroteltujen arvojen luettelona.
  2. Yksityiskohtaiset – tämä on Boolen parametri, joka määrittää, näyttääkö pyyntö yksityiskohtaisia ​​tietoja sirpaleiden palautuksista vai ei. Tämän vaihtoehdon oletusarvo on false
  3. Group_by – määrittää avaimet, joita käytetään tehtävien ryhmittelyyn vastauksesta. Hyväksytyt arvot sisältävät:
    • Solmut – solmun tunnus.
    • Vanhemmat – vanhemman tunnus.
    • Solmu – älä ryhmittele.
  4. Solmun_id – määrittää solmun tai luettelon solmuista, joista tiedot haetaan.
  5. parent_task_id – määrittää ylätason tunnuksen, jota käytetään vastaustietojen suodattamiseen. Voit näyttää kaikki tehtävät määrittämällä vanhempien_tehtävän_id:ksi -1.
  6. master_timeout – määrittää keston, jonka pyyntö odottaa yhteyttä pääsolmuun. Jos pyyntö ei saa vastausta isännältä master_timeout-ajan päätyttyä, se epäonnistuu ja palauttaa virheilmoituksen. Oletuskesto on 30 sekuntia.
  7. Aikakatkaisu – samanlainen kuin master_timeout, mutta tämä arvo määrittää keston, jonka kuluessa vastausta odotetaan.
  8. Wait_for_completion – jos tosi, pyyntö estetään, kunnes toiminto lopetetaan. Oletusarvo on false.

Vastaus

Jos pyyntö onnistuu, se palauttaa yksityiskohtaiset tiedot määritetystä tehtävästä tai tehtävistä. Jos tehtävää ei löydy, pyyntö palauttaa 404-tilakoodin.

Käyttöesimerkki

Seuraava esimerkki näyttää, kuinka tehtävienhallintasovellusliittymää käytetään näyttämään tietoja kaikista klusterissa suoritettavista tehtävistä (kaikki solmut).

curl -XGET 'http://localhost:9200/_tasks' -H 'kbn-xsrf: raportointi'

Pyynnön tulee antaa tietoja klusterin tehtävistä alla olevan tulosteen mukaisesti:

Esimerkki 2

Seuraavassa esimerkissä käytämme solmuparametria rajoittamaan vastaukset vain tehtäviin, jotka ovat käynnissä solmussa slave_1

curl -XGET 'http://localhost:9200/_tasks?nodes=slave_1' -H 'kbn-xsrf: raportointi'

Tämän pitäisi palauttaa tehtävät määritetyssä solmussa alla olevan tulosteen mukaisesti:

'tehtävät' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'solmu' : 'orja_1' ,
'id' : 1651265 ,
'tyyppi' : 'kuljetus' ,
'toiminta' : 'indexs:monitor/fleet/global_checkpoints' ,
'aloitusaika_millisissä' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'peruutettava' : väärä,
'otsikot' : {
'X-elastic-tuote-alkuperä' : 'laivasto'
}
}

Esimerkki 3

Esimerkissä 3 käytämme tehtävänhallintasovellusliittymää näyttääksemme tietoja tehtävästä määritetyllä tunnuksella:

curl -XGET 'http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310' -H 'kbn-xsrf: raportointi'

Tulostehtävän tiedot ovat seuraavanlaiset:

Esimerkki 4

Jos haluat näyttää yksityiskohtaisia ​​tietoja tehtävästä, lisää pyyntöön yksityiskohtainen parametri kuvan mukaisesti:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
kihara -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
Tämän pitäisi antaa lisätietoja tehtävistä:

Johtopäätös

Tämä viesti tutkittiin kuinka käyttää tehtävienhallinnan sovellusliittymää Elasticsearchissa. Tämän API:n avulla voimme hakea tietoja klusterin parhaillaan suoritettavista tehtävistä.

Kippis!! & Otan sinut kiinni seuraavassa.