Skip to main content
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Configurazione della notifica dei metadati del bucket PUT

La richiesta di configurazione della notifica dei metadati del bucket PUT consente di abilitare il servizio di integrazione della ricerca per singoli bucket. Il codice XML di configurazione della notifica dei metadati fornito nel corpo della richiesta specifica gli oggetti i cui metadati vengono inviati all'indice di ricerca di destinazione.

Per completare questa operazione è necessario disporre dell'autorizzazione s3:PutBucketMetadataNotification per un bucket oppure essere l'account root.

Richiesta

La richiesta deve includere la configurazione della notifica dei metadati nel corpo della richiesta. Ogni configurazione di notifica dei metadati include una o più regole. Ogni regola specifica gli oggetti a cui si applica e la destinazione a cui StorageGRID deve inviare i metadati degli oggetti.

Gli oggetti possono essere filtrati in base al prefisso del nome dell'oggetto. Ad esempio, potresti inviare metadati per oggetti con il prefisso /images verso una destinazione e oggetti con il prefisso /videos all'altro.

Le configurazioni con prefissi sovrapposti non sono valide e vengono rifiutate al momento dell'invio. Ad esempio, una configurazione che includeva una regola per gli oggetti con il prefisso test e una seconda regola per gli oggetti con il prefisso test2 non sarebbe consentito.

Le destinazioni devono essere specificate utilizzando l'URN di un endpoint StorageGRID . L'endpoint deve esistere quando viene inviata la configurazione della notifica dei metadati, altrimenti la richiesta fallisce come 400 Bad Request Il messaggio di errore afferma: Unable to save the metadata notification (search) policy. The specified endpoint URN does not exist: URN.

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>rule-status</Status>
        <Prefix>key-prefix</Prefix>
        <Destination>
           <Urn>arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Rule-2</ID>
         ...
    </Rule>
     ...
</MetadataNotificationConfiguration>

La tabella descrive gli elementi presenti nel file XML di configurazione delle notifiche dei metadati.

Nome Descrizione Necessario

MetadatiNotificaConfigurazione

Tag contenitore per le regole utilizzate per specificare gli oggetti e la destinazione delle notifiche dei metadati.

Contiene uno o più elementi Rule.

Regola

Tag contenitore per una regola che identifica gli oggetti i cui metadati devono essere aggiunti a un indice specificato.

Le regole con prefissi sovrapposti vengono rifiutate.

Incluso nell'elemento MetadataNotificationConfiguration.

ID

Identificatore univoco per la regola.

Incluso nell'elemento Regola.

NO

Stato

Lo stato può essere "Abilitato" o "Disabilitato". Non viene intrapresa alcuna azione per le regole disabilitate.

Incluso nell'elemento Regola.

Prefisso

Gli oggetti che corrispondono al prefisso sono interessati dalla regola e i loro metadati vengono inviati alla destinazione specificata.

Per trovare la corrispondenza con tutti gli oggetti, specificare un prefisso vuoto.

Incluso nell'elemento Regola.

Destinazione

Tag contenitore per la destinazione di una regola.

Incluso nell'elemento Regola.

Urna

URN della destinazione a cui vengono inviati i metadati dell'oggetto. Deve essere l'URN di un endpoint StorageGRID con le seguenti proprietà:

  • `es`deve essere il terzo elemento.

  • L'URN deve terminare con l'indice e il tipo in cui sono archiviati i metadati, nel formato domain-name/myindex/mytype .

Gli endpoint vengono configurati tramite Tenant Manager o Tenant Management API. Hanno la seguente forma:

  • arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype

  • urn:mysite:es:::mydomain/myindex/mytype

L'endpoint deve essere configurato prima di inviare il file XML di configurazione, altrimenti la configurazione fallirà con un errore 404.

L'urna è inclusa nell'elemento Destinazione.

Esempi di richiesta

Questo esempio mostra come abilitare l'integrazione della ricerca per un bucket. In questo esempio, i metadati di tutti gli oggetti vengono inviati alla stessa destinazione.

PUT /test1?x-ntap-sg-metadata-notification HTTP/1.1
Date: date
Authorization: authorization string
Host: host

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>Enabled</Status>
        <Prefix></Prefix>
        <Destination>
           <Urn>urn:sgws:es:::sgws-notifications/test1/all</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

In questo esempio, metadati degli oggetti per gli oggetti che corrispondono al prefisso /images viene inviato a una destinazione, mentre i metadati degli oggetti corrispondono al prefisso /videos viene inviato a una seconda destinazione.

PUT /graphics?x-ntap-sg-metadata-notification HTTP/1.1
Date: date
Authorization: authorization string
Host: host

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Images-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/images</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-east-1:3333333:domain/es-domain/graphics/imagetype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Videos-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/videos</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-west-1:22222222:domain/es-domain/graphics/videotype</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

JSON generato dal servizio di integrazione della ricerca

Quando si abilita il servizio di integrazione della ricerca per un bucket, ogni volta che vengono aggiunti, aggiornati o eliminati metadati o tag di un oggetto, viene generato un documento JSON che viene inviato all'endpoint di destinazione.

Questo esempio mostra un esempio del JSON che potrebbe essere generato quando un oggetto con la chiave SGWS/Tagging.txt viene creato in un bucket denominato test . IL test il bucket non è sottoposto a versioning, quindi versionId il tag è vuoto.

{
  "bucket": "test",
  "key": "SGWS/Tagging.txt",
  "versionId": "",
  "accountId": "86928401983529626822",
  "size": 38,
  "md5": "3d6c7634a85436eee06d43415012855",
  "region":"us-east-1",
  "metadata": {
    "age": "25"
  },
  "tags": {
    "color": "yellow"
  }
}

Metadati degli oggetti inclusi nelle notifiche dei metadati

Nella tabella sono elencati tutti i campi inclusi nel documento JSON inviato all'endpoint di destinazione quando è abilitata l'integrazione della ricerca.

Il nome del documento include il nome del bucket, il nome dell'oggetto e l'ID della versione, se presente.

Tipo Nome dell'articolo Descrizione

Informazioni su bucket e oggetti

secchio

Nome del bucket

Informazioni su bucket e oggetti

chiave

Nome chiave oggetto

Informazioni su bucket e oggetti

ID versione

Versione dell'oggetto, per gli oggetti nei bucket con versione

Informazioni su bucket e oggetti

regione

Regione del bucket, ad esempio us-east-1

Metadati di sistema

misurare

Dimensione dell'oggetto (in byte) visibile a un client HTTP

Metadati di sistema

md5

Hash dell'oggetto

Metadati utente

metadati key:value

Tutti i metadati utente per l'oggetto, come coppie chiave-valore

Etichette

etichette key:value

Tutti i tag oggetto definiti per l'oggetto, come coppie chiave-valore

Nota Per i tag e i metadati utente, StorageGRID passa date e numeri a Elasticsearch come stringhe o come notifiche di eventi S3. Per configurare Elasticsearch in modo che interpreti queste stringhe come date o numeri, seguire le istruzioni di Elasticsearch per la mappatura dinamica dei campi e per la mappatura dei formati di data. È necessario abilitare i mapping dei campi dinamici sull'indice prima di configurare il servizio di integrazione della ricerca. Dopo aver indicizzato un documento, non è possibile modificare i tipi di campo del documento nell'indice.
Informazioni correlate

"Utilizzare un account tenant"