Bruke Elasticsearch for å sjekke om det eksisterer et alias

Bruke Elasticsearch for å sjekke om det eksisterer et alias

I denne korte artikkelen vil vi vise deg hvordan du bruker Elasticsearch Alias ​​API for å sjekke om det finnes et alias i klyngen. Det er bra å sikre at en indeks eksisterer før du bruker den i en spørring. Det kan også være fordelaktig å forhindre at ett alias refererer til en lignende indeks for å forhindre navnekollisjoner.

La oss dykke inn.

Be om syntaks

Følgende blokkering viser forespørselsaliaset for API -endepunktet:

Hode _alias/
Hode /_alias /

Forespørselen godtar følgende parametere:

  1. - Angir en liste over aliaser som skal kontrollerer (som komma-separerte verdier). Du kan også spesifisere en stjerne som en jokertegn for å betegne alle aliaser i klyngen.
  2. - Angir en liste over datastrømmer eller indekser som brukes til å begrense målforespørselen. Du kan også bruke en stjerne eller _all jokertegn.

Be om svar

Forespørselen returnerer de tilsvarende HTTP -statuskoder som vist:

  1. 200 - Alt det som er spesifisert finnes i klyngen.
  2. 404 - En eller flere aliaser eksisterer ikke i klyngen.

Eksempel

La oss illustrere hvordan vi bruker dette API. Anta at vi har en indeks som heter Netflix som inneholder filmer og TV -serier.

Vi kan starte med å lage et alias for indeksen som vist i følgende:

Curl -xpost "http: // localhost: 9200/_aliases" -h "kbn -xsrf: rapportering" -h "innholdstype: applikasjon/json" -d '

"Handlinger": [

"Legg til":
"Indeks": "Netflix",
"alias": "ntflx"


]
'

Vi kan deretter sjekke om aliaset eksisterer som vist i følgende:

Curl -xhead "http: // localhost: 9200/_alias/ntflx" -h "kbn -xsrf: rapportering"

Den resulterende utgangen er som følger:

200 - Ok

Hvis vi ber om et ikke-eksisterende alias:

Curl -xhead "http: // localhost: 9200/_alias/nf" -h "kbn -xsrf: rapportering"

Den forrige forespørselen skal returnere en statuskode på 404 som:


"Statuscode": 404,
"feil ikke funnet",
"melding": "404 - ikke funnet"

I dette tilfellet eksisterer ikke indeksen i klyngen.

Vi kan også sjekke flere aliaser som vist på følgende:

Curl -xhead "http: // localhost: 9200/_alias/ntflx, netflix_alias" -h "kbn -xsrf: rapportering"

Den resulterende utgangen er som følger:

200 - Ok

I dette tilfellet kan vi bekrefte at begge aliasene eksisterer i klyngen.

Hvis ett alias ikke eksisterer, returnerer forespørselen en 404-status-kode.

Konklusjon

I dette innlegget diskuterte vi hvordan du bruker Elasticsearch Alias ​​API med hodemetoden for å sjekke om et spesifikt alias eksisterer i klyngen.

Takk for at du leste!