Skip to main content

Flux d'événements

!!! Info "Avis"

Les fonctionnalités d' Equinix Metal Observability sont actuellement en version bêta et ne sont pas disponibles pour tous les clients. Elles sont uniquement destinées à l'évaluation et aux tests. Cette fonctionnalité n'est actuellement ni facturée ni couverte par un contrat de niveau de service.

Vous pouvez surveiller des données d'événements et d'activités spécifiques de vos organisations Metal en quasi-temps réel grâce aux flux d'événements. Ces flux peuvent fournir des données critiques pour vous aider à comprendre et analyser vos besoins métier. Ces événements incluent:

  • Événements de compte et d'organisation
  • Services et événements de facturation
  • Événements de gestion des appareils
  • Événements de gestion de réseautage

Les flux d'événements ne sont visibles que par les propriétaires et les administrateurs d'une organisation.

Limites

Actuellement, les flux d'événements ne prennent en charge que Splunk comme destination. Les données des flux d'observabilité sont envoyées à Splunk par l'interface [Collecteur d'événements HTTP Splunk (« HEC »). Pour recevoir ces données, vous devez configurer un collecteur d'événements HTTP dans votre instance Splunk. Nous recommandons de créer un collecteur dédié à la réception des données des flux d'observabilité.

L'envoi de données de flux d'observabilité à Splunk est soumis aux limitations suivantes:

  • Pour garantir le chiffrement des données en transit, seules les connexions HTTPS sont autorisées. L'envoi de données à un HEC Splunk via un protocole HTTP simple et non sécurisé n'est PAS pris en charge.
  • Toutes les données du flux d'observabilité sont envoyées à Splunk sous forme d'événements JSON ; les données brutes ne sont PAS prises en charge.
  • Les événements JSON seront envoyés au point de terminaison standard /services/collector/event ; les URL de points de terminaison alternatifs ne sont PAS prises en charge.
  • Les événements JSON seront envoyés à l'index par défaut configuré lors de la création du collecteur d'événements HTTP Splunk. Le remplacement de l'index des événements envoyés à Splunk n'est PAS pris en charge.
  • L'accusé de réception de l'indexeur n'est PAS pris en charge.

L'API d'observabilité

Si vous utilisez l'API Observability, vous devez noter certaines différences entre celle-ci et l'API Equinix Metal actuelle.

  • nouveaux points de terminaison d'API
  • nouveau mécanisme d'authentification

Tout d’abord, Observability possède ses propres points de terminaison d’API qui peuvent être atteints à https://observability.equinixmetal.net.

Deuxièmement, l'API d'observabilité dispose d'un mécanisme d'authentification où vous échangez votre clé API Equinix Metal (../identity-access-management/api-keys.mdx) contre un jeton Web JSON (JWT) à durée de vie limitée. Ce jeton vous sert à authentifier toutes les requêtes d'observabilité. Il expire après 5 minutes. Pour obtenir un JWT, envoyez une requête POST au point de terminaison iam.metalctrl.io/api-keys/exchange.

curl -X POST \
-H "Authorization: bearer <API_TOKEN>" \
https://iam.metalctrl.io/api-keys/exchange

La réponse sera un JSON "access_token" que vous utiliserez pour authentifier vos requêtes auprès de l'API Observability.

{
"access_token": "eyJ....98"
}

L'API d'observabilité n'accepte pas les clés API Equinix Metal pour l'authentification.

Création d'un flux d'événements

Créez un flux d'événements pour exporter les données du serveur vers Splunk à des fins de stockage et d'analyse. Pour créer un flux, procédez comme suit:

  1. Rendez-vous sur [Portail Equinix Metal et entrez vos identifiants pour vous connecter au portail.

  2. Dans le menu déroulant Organisation, sélectionnez l'organisation pour laquelle vous souhaitez créer un flux d'événements.

  3. Cliquez sur l'onglet Observabilité.

    Event Streams page from the Observability tab

  4. Cliquez, Créer un flux d'événements.

  5. Dans la fenêtre modale Créer un flux d'événements, entrez un nom convivial dans le champ Nom.

  6. Optionnel. Entrez une description du flux d'événements dans le champ de description.

  7. Saisissez votre nom d’hôte Splunk et votre clé API dans les champs fournis pour envoyer des données à Splunk.

    Le nom d'hôte de la connexion doit être extrait de l'URI du collecteur d'événements HTTP (https://docs.splunk.com/Documentation/Splunk/latest/Data/UsetheHTTPEventCollector#Send_data_to_HTTP_Event_Collector). Il doit être spécifié comme une chaîne de caractères, suivie éventuellement d'un numéro de port ; les valeurs valides sont http-inputs-my-org.splunkcloud.com ou splunk.example.com:8443.

    La clé API doit être le jeton du collecteur d'événements HTTP généré lors de la création du point de terminaison HEC Splunk. Elle sera stockée dans un format chiffré, déchiffrable uniquement par le worker qui envoie les données du flux d'observabilité.

Tester la connexion au flux

Avant de diffuser une connexion de données vers Splunk, vous devez la tester pour garantir sa validité. Pour ce faire, procédez comme suit:

  1. Dans la fenêtre modale Créer un flux d'événements, entrez votre nom d'hôte Splunk et votre clé API dans les champs prévus à cet effet, si vous ne l'avez pas déjà fait.

  2. Cliquez, Testez la connexion au flux.

    La connexion est valide si le message Test réussi s'affiche à l'écran. Un message d'erreur s'affiche si le test de connexion échoue. Vous devez recevoir le message Test réussi pour que la connexion de test soit valide et permette de diffuser des données vers Splunk.

    Testing an event stream in the console

  3. Cliquez sur Enregistrer pour sauvegarder le flux de l'événement. Le flux d'événements est enregistré dans le tableau Flux d'événements de la page Observabilité.

Gestion d'un flux d'événements

Une fois le flux d'événements créé dans la console Metal, vous pouvez le gérer à partir de l'onglet Observabilité de votre organisation.

Event Streams Table

Suppression d'un flux d'événements

Pour arrêter le flux de données vers votre instance Splunk, vous pouvez supprimer le flux d'événements. Pour ce faire, procédez comme suit:

  1. Dans le tableau Flux d'événements, cliquez sur l'icône de la corbeille dans la colonne Supprimer. La fenêtre Supprimer le flux d'événements s'affiche.

  2. Entrez Supprimer dans le champ et cliquez sur Supprimer.

Une fois un flux supprimé, il cesse immédiatement d'accepter de nouvelles données provenant des sources, mais continue de diffuser les données en cours. Une fois toutes les données en cours diffusées, le flux est supprimé et toutes les ressources sont libérées.

Métadonnées d'événements Splunk

Le service d'observabilité définit les clés [métadonnées d'événement Splunk suivantes pour chaque événement de journal d'audit qu'il envoie à votre flux:

  • time - The timestamp at which the event occurred, specified in seconds since the Unix epoch.
  • source - All events will specify a source of equinix.
  • sourcetype- Audit log events will specify a source type of log.
  • fields - Additional fields for indexing as described below.

Champs d'index

En plus des clés de métadonnées Splunk standard décrites ci-dessus, le service d'observabilité définit les champs d'index personnalisés suivants pour chaque événement de journal envoyé à votre flux. Ces champs sont facultatifs et seront omis s'ils sont absents.

  • level - A human-readable indication of the logging level, such as INFO or DEBUG.
  • severity - A numeric severity level; higher numbers indicate more severe events (such as errors or violations).

Données d'événement Splunk

Le contenu de la clé event envoyée au collecteur d'événements HTTP Splunk en tant que "Données d'événement" est un document JSON structuré contenant des informations propres à l'application sur les événements enregistrés.

Pour une référence complète, consultez la Documentation du schéma d'événements Splunk.

{
"stream" : {
"streamId" : "dce13c1d-0589-406b-af40-854156a0621e",
"streamName" : "Example Stream"
},
"source" : {
"category" : "audit",
"type" : "api_request",
"service" : "metal",
"organizationId" : "99be473c-ee3c-4aeb-a678-eba3fdae7ca6",
"projectId" : "99be473c-ee3c-4aeb-a678-eba3fdaebeef"

},
"schema" : "v1",
"timestamp" : "2024-04-16T14:58:21.442334Z",
"level" : "INFO",
"eventId" : "6910f03f-ec60-42fc-9e9d-c5f6af2f732d",
"event" : {
"eventName" : "instance_provision_requested",
"status" : "failed",
"auth" : {
"authType" : "user",
"user" : {
"userId" : "582865f9-904b-4061-b536-2420eb01ecdc",
"userName" : "jdoe@equinix.com"
},
"role" : {
"roleName" : "collaborator"
}
},
"httpRequest" : {
"host" : "api.equinix.com",
"method" : "PUT",
"path" : "/metal/v1/projects/99f8e7f1-fe4a-441a-ade9-687743f080f6",
"scheme" : "http",
"statusCode" : 200,
"userAgent" : "metal-cli/metal equinix-sdk-go/0.30.0",
"sourceIpAddress" : "111.111.111.11"
}
}
}
Cette page vous a-t-elle été utile ?