Utilizzo di ElaSticSearch per verificare se esiste un alias

Utilizzo di ElaSticSearch per verificare se esiste un alias

In questo breve articolo, ti mostreremo come utilizzare l'API Alias ​​di Elasticsearch per verificare se esiste un alias nel cluster. È bene assicurarsi che esista un indice prima di usarlo in una domanda. Può anche essere utile impedire a un alias di fare riferimento a un indice simile per prevenire le collisioni dei nomi.

Immerciamoci.

Richiedi sintassi

Il blocco seguente mostra l'alias di richiesta per l'endpoint API:

Testa _ALIAS/
Head /_alias /

La richiesta accetta i seguenti parametri:

  1. - Specifica un elenco di alias da verificare (come valori separati da virgola). È inoltre possibile specificare un asterisco come personaggio jolly per indicare tutti gli alias nel cluster.
  2. - Specifica un elenco di flussi di dati o indici utilizzati per limitare la richiesta di destinazione. Puoi anche usare un asterisco o _tle wildcards.

Richiedi risposte

La richiesta restituisce i codici di stato HTTP corrispondenti come mostrato:

  1. 200 - Tutto l'alias specificato esiste nel cluster.
  2. 404 - Uno o più alias non esistono nel cluster.

Esempio

Illustriamo come usare questa API. Supponiamo di avere un indice chiamato Netflix che contiene film e programmi TV.

Possiamo iniziare creando un alias per l'indice come mostrato nel seguente:

Curl -xpost "http: // localhost: 9200/_aliases" -H "kbn -xsrf: reporting" -h "contenuti -type: applicazione/json" -d '

"Azioni": [

"aggiungere":
"INDICE": "Netflix",
"Alias": "NTFLX"


"
'

Possiamo quindi verificare se l'alias esiste come mostrato nel seguente:

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

L'output risultante è il seguente:

200 - OK

Se richiediamo un alias inesistente:

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

La richiesta precedente dovrebbe restituire un codice di stato 404 come:


"Ccode status": 404,
"errore non trovato",
"Messaggio": "404 - non trovato"

In questo caso, l'indice non esiste nel cluster.

Possiamo anche controllare i più alias come mostrato di seguito:

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

L'output risultante è il seguente:

200 - OK

In questo caso, possiamo verificare che entrambi gli alias esistano nel cluster.

Se un alias non esiste, la richiesta restituisce un codice di 404 status.

Conclusione

In questo post, abbiamo discusso di come utilizzare l'API Alias ​​di Elasticsearch con il metodo Head per verificare se esiste un alias specifico nel cluster.

Grazie per aver letto!