Gestione delle estensioni di IBM Cloud Logs

In IBM Cloud Logs, le estensioni offrono configurazioni immediate per gestire i dati di log. Un'estensione contiene una serie di definizioni di risorse predefinite, quali avvisi, regole di analisi, dashboard e altro ancora, che possono essere utilizzate per essere rapidamente operativi e per monitorare e segnalare i dati rilevanti per l'estensione.

  • È possibile distribuire tutte le risorse o un sottoinsieme di risorse di un'estensione nel contesto di applicazioni e sottosistemi selezionati.

  • È possibile gestire un'estensione in modo grafico tramite l'interfaccia utente o programmatico tramite l'API.

  • Dopo aver distribuito le risorse da un'estensione, è possibile personalizzarle.

    Per evitare di sovrascrivere le modifiche personalizzate alle risorse predefinite, è necessario staccare queste risorse dalla distribuzione dell'estensione. È possibile staccare le risorse solo graficamente tramite l'interfaccia utente.

  • Le estensioni sono classificate per tipo. I tipi validi sono Security, e Observability.

  • Le estensioni includono etichette che possono essere utilizzate per filtrarle. Ad esempio, il tag IBM è associato a estensioni che possono essere utilizzate per monitorare il sito IBM Cloud.

  • Le estensioni possono includere avvisi predefiniti, regole di parsing, definizioni di eventi a metriche, dashboard e arricchimenti.

Elenco delle estensioni disponibili

L'elenco seguente illustra le estensioni che è possibile distribuire per monitorare i registri:

  • Monitoraggio del sistema: Utilizzatelo per ottenere informazioni sulle prestazioni del vostro sistema e sull'utilizzo di un'istanza di IBM Cloud Logs.

  • Tracciamento dell'attività: Utilizzatelo per ottenere approfondimenti sui dati di tracciamento dell'attività IBM Cloud.

  • IBM Cloud Kubernetes Service: Utilizzatelo per ottenere informazioni sui vostri registri IBM Cloud Kubernetes Service.

  • IBM Cloud® Databases for MySQL: Utilizzatelo per ottenere informazioni sui vostri registri IBM Cloud® Databases for MySQL.

  • IBM Cloud Databases for PostgreSQL: Utilizzatelo per ottenere informazioni sui vostri registri IBM Cloud Databases for PostgreSQL.

  • IBM® Cloudant® for IBM Cloud®: Utilizzatelo per ottenere informazioni sui vostri registri IBM® Cloudant® for IBM Cloud®.

  • Cloudflare: Utilizza questo strumento per ottenere informazioni sui log di Cloudflare.

  • IBM Cloud® Databases for Redis: Utilizzatelo per ottenere informazioni sui vostri registri IBM Cloud Databases for Redis.

  • Linux: Utilizzatelo per ottenere informazioni sui vostri registri Linux.

  • MongoDB: Utilizzatelo per ottenere informazioni sui vostri registri MongoDB.

  • NGINX: Utilizzatelo per ottenere informazioni sui log di nginx.

Elenco delle estensioni disponibili per ID

La tabella seguente elenca gli ID delle estensioni da utilizzare quando si usa l'API delle estensioni:

Azioni di estensione tramite l'API REST di IBM Cloud Logs
Estensione ID
Monitoraggio del sistema SystemMonitoring
Monitoraggio delle Attività ActivityTracking
IBM Cloud Kubernetes Service IBMCloudKubernetes
IBM Cloud® Databases for MySQL IBMMySQL
IBM Cloud Databases for PostgreSQL IBMPostgreSQL
IBM® Cloudant® for IBM Cloud® IBMCloudant
Cloudflare Cloudflare
IBM Cloud® Databases for Redis IBMRedis
Linux Linux
MongoDB MongoDB
NGINX NGINX

Metodi API

La tabella seguente elenca le azioni che si possono eseguire per gestire le estensioni:

Azioni di estensione tramite l'API REST di IBM Cloud Logs
Azione Metodo API REST URL API
Elenco estensioni GET <ENDPOINT>/v1/extensions
Ottenere un'estensione per ID GET <ENDPOINT>/v1/extensions/{id}
Ottenere i dettagli di distribuzione di un'estensione GET <ENDPOINT>/v1/extensions/{id}/deployment
Distribuire un'estensione PUT <ENDPOINT>/v1/extensions/{id}/deployment
Aggiornare un'estensione PUT <ENDPOINT>/v1/extensions/{id}/deployment
Rimuovere un'estensione DELETE <ENDPOINT>/v1/extensions/{id}/deployment

Per gestire le estensioni si può utilizzare il sito ENDPOINT, pubblico o privato. Per ulteriori informazioni sugli endpoint, vedere Endpoint API del servizio.

Per ulteriori informazioni sull'API REST, vedere Estensioni.

Ottenere l'elenco delle estensioni disponibili tramite l'interfaccia utente

Per visualizzare le estensioni disponibili attraverso l'interfaccia utente IBM Cloud Logs, eseguire i seguenti passaggi:

  1. Avvia la IU IBM Cloud Logs.

  2. Fare clic sull'icona Integrazioni Icona Integrazioni > Estensioni.

Viene visualizzato l'elenco delle estensioni disponibili.

Ottenere l'elenco delle estensioni disponibili utilizzando l'API

Per ottenere l'elenco delle estensioni disponibili per la distribuzione, compresi ulteriori dettagli per quelle distribuite, completare i seguenti passaggi:

  1. Ottenere il token di autenticazione. Vedere Autenticazione tramite API.

  2. Ottenere l'endpoint dell'istanza in cui si desidera gestire le estensioni. Vedere Endpoint API di servizio.

  3. Elenca tutte le estensioni, comprese le versioni e le risorse distribuite per ogni estensione.

    curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<API_ENDPOINT>/v1/extensions"
    

Ottenere l'elenco delle estensioni distribuite utilizzando l'API

Per ottenere informazioni sulle estensioni distribuite in un'istanza di IBM Cloud Logs, si può usare il metodo Get list of extensions. Le informazioni includono dettagli sulla versione e sulle risorse distribuite.

Ad esempio, completare i seguenti passaggi:

  1. Ottenere il token di autenticazione. Vedere Autenticazione tramite API.

  2. Ottenere l'endpoint dell'istanza in cui si vuole distribuire un'estensione. Vedere endpoint API del servizio.

  3. Ottenere i dettagli di un'estensione distribuita.

    curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<API_ENDPOINT>/v1/extensions?deployed=true"
    

Ottenere l'elenco delle estensioni non distribuite utilizzando l'API

Per ottenere informazioni sulle estensioni non ancora distribuite in un'istanza di IBM Cloud Logs, si può usare il metodo Get list of extensions.

Ad esempio, completare i seguenti passaggi:

  1. Ottenere il token di autenticazione. Vedere Autenticazione tramite API.

  2. Ottenere l'endpoint dell'istanza in cui si vuole distribuire un'estensione. Vedere endpoint API del servizio.

  3. Ottenere i dettagli di un'estensione distribuita.

    curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<API_ENDPOINT>/v1/extensions?deployed=false"
    

Distribuzione di un'estensione tramite l'API

Per distribuire le risorse incluse in un'estensione, è possibile utilizzare il metodo API Deploy o aggiornare la distribuzione di un'estensione.

Per distribuire un'estensione, completare i seguenti passaggi:

  1. Ottenere il token di autenticazione. Vedere Autenticazione tramite API.

  2. Ottenere l'endpoint dell'istanza in cui si vuole distribuire un'estensione. Vedere endpoint API del servizio.

  3. Ottenere l'ID dell'estensione che si vuole distribuire. Vedere Elenco delle estensioni disponibili.

  4. Ottiene i dettagli di un'estensione in base all'ID, comprese le informazioni sulle risorse distribuite.

    curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<API_ENDPOINT>/v1/extensions/<ExtensionID>"
    

    Ad esempio, per ottenere le informazioni sull'estensione Kubernetes, eseguire:

    curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<ENDPOINT>/v1/extensions/IBMCloudKubernetes"
    

    Verrà visualizzata una risposta del tipo seguente:

    {
    "id": "IBMCloudKubernetes",
    "name": "IBM Cloud Kubernetes Service",
    "revisions": [
        {
            "version": "1.0.0",
            "description": "# IBM Cloud Kubernetes Service\nThe dashboard provides an in-depth analysis of IBM Cloud Kubernetes Service, offering a comprehensive view of cluster performance, node activity, pod logs, and error analysis. It enables quick issue identification, trend analysis, and efficient Kubernetes monitoring.\n",
            "excerpt": "",
            "labels": [
                "IBM",
                "Kubernetes",
                "Сluster",
                "K8S",
                "Cloud",
                "Compute",
                "Observability"
            ],
            "items": [
                {
                    "id": "1405e028-dd50-48a0-86c5-b361e029a3f1",
                    "name": "IBM Kubernetes",
                    "description": "Dashboard for IBM Cloud Kubernetes Service.",
                    "target_domain": "dashboard"
                },
                {
                    "id": "93cda01a-526e-4872-b29a-125645abf784",
                    "name": "IBM Kubernetes - No logs from service",
                    "description": "No logs have been received from the kubernetes service, indicating potential issues with logging configuration, service downtime, or connectivity problems affecting log transmission.",
                    "target_domain": "alert"
                },
                {
                    "id": "9e2099ee-78f4-4070-a1fd-7be109f136ce",
                    "name": "IBM Kubernetes - More than 5 erroneous cluster logs within 15 minutes",
                    "description": "Over five error logs have been recorded at the cluster level within a 15-minute window, indicating potential issues affecting the Kubernetes cluster's overall health or configuration.",
                    "target_domain": "alert"
                },
                {
                    "id": "f242dd8a-138a-4dcc-92b9-09f5ec1b4840",
                    "name": "IBM Kubernetes - More than 5 erroneous pod logs within 15 minutes",
                    "description": "More than five error logs have been detected in pod-level operations within 15 minutes, suggesting issues with workloads or pod-level configurations.",
                    "target_domain": "alert"
                },
                {
                    "id": "504c4f1a-4185-4619-bc7c-9d011b3f3245",
                    "name": "IBM Kubernetes - Host change",
                    "description": "A host change event has been detected, which might indicate a node replacement, scaling operation, or unexpected infrastructure changes.",
                    "target_domain": "alert"
                },
                {
                    "id": "c179c165-b12e-4f40-8e87-e4627d6dbdef",
                    "name": "IBM Kubernetes - Permission denied",
                    "description": "A permission denial has occurred during a Kubernetes operation, possibly caused by misconfigured access controls or insufficient permissions for the requested action.",
                    "target_domain": "alert"
                }
            ]
        }
    ],
    "changelog": [
        {
            "version": "1.0.0",
            "description_md": "### Changed\nRelease of an extension for the IBM Cloud Kubernetes Service.\n"
        }
    ]
    }
    
  5. Distribuire l'estensione. Ad esempio, è possibile eseguire il seguente comando cURL per distribuire parzialmente l'estensione Kubernetes. Questo esempio crea un dashboard e 2 avvisi:

    curl -X PUT --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data   '{
    "version": "1.0.0",
    "item_ids": [
      "1405e028-dd50-48a0-86c5-b361e029a3f1",
      "93cda01a-526e-4872-b29a-125645abf784",
      "9e2099ee-78f4-4070-a1fd-7be109f136ce"
    ],
    "applications": [
      "myapp"
    ],
    "subsystems": [
      "mysubsystem"
    ]
    
    

}' "https:// /v1/extensions/IBMCloudKubernetes/deployment"



## Aggiornamento di un'estensione tramite l'API {: #extensions-mgmt-update-api api}

Si potrebbe voler distribuire una nuova versione di un'estensione, distribuire risorse aggiuntive o modificare le applicazioni e i sottosistemi configurati come fonti di dati rilevanti per l'estensione. Per aggiornare le risorse incluse in un'estensione, è possibile utilizzare il metodo API [Deploy o aggiornare il deployment di un'estensione.](/apidocs/logs-service-api#update-extension-deployment)

Per aggiornare un'estensione, procedere come segue:

Assicurarsi di specificare nella chiamata API tutte le risorse di quell'estensione che sono attualmente distribuite. Se sono state modificate risorse precedentemente distribuite da questa estensione, staccarle prima di eseguire l'aggiornamento. Se non si includono tutte le risorse precedentemente distribuite, quelle non incluse vengono rimosse.
{: attention}

1. Ottenere il token di autenticazione. Vedere [Autenticazione tramite API](/apidocs/logs-service-api#authentication).

2. Ottenere l'endpoint dell'istanza in cui si vuole distribuire un'estensione. Vedere [endpoint API del servizio](/docs/cloud-logs?topic=cloud-logs-endpoints_api).

3. Ottenere l'ID dell'estensione che si vuole distribuire. Vedere [Elenco delle estensioni disponibili](#extensions-mgmt-list).

4. Ottiene i dettagli di un'estensione in base all'ID, comprese le informazioni sulle risorse distribuite. Controllare la sezione di distribuzione per vedere quali risorse sono già distribuite.

   ```text {: codeblock}
   curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<API_ENDPOINT>/v1/extensions/<ExtensionID>"
  1. Aggiornare l'estensione. Ad esempio, è possibile eseguire il seguente comando cURL per aggiornare l'estensione Kubernetes e mantenere solo 1 dashboard e 1 avviso:

    curl -X PUT --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data   '{
    "version": "1.0.0",
    "item_ids": [
      "1405e028-dd50-48a0-86c5-b361e029a3f1",
      "93cda01a-526e-4872-b29a-125645abf784"
    ],
    "applications": [
      "myapp"
    ],
    "subsystems": [
      "mysubsystem"
    ]
    
    

}' "https:// /v1/extensions/IBMCloudKubernetes/deployment"

## Distribuzione di un'estensione {: #extensions-mgmt-deploy-ui ui}

Per distribuire un'estensione, completare i seguenti passaggi:

1. [Accedere al proprio account IBM Cloud](https://cloud.ibm.com/login){: external}.

2. [Accedere all'istanza di IBM Cloud Logs](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)

3. Fare clic sull'**icona Integrazioni** ![Icona Integrazioni](/icons/integrations.svg "Integrazioni") > **Estensioni**.

4. Fare clic su **Distribuisci** nel riquadro dell'estensione che si desidera distribuire.

5. Selezionare le *applicazioni* e i *sottosistemi* a cui applicare l'estensione.

6. Per impostazione predefinita, tutto ciò che è definito nell'estensione verrà distribuito. È possibile rimuovere il segno di spunta per qualsiasi elemento che non si desidera distribuire.

7. Fare clic su **+ Deploy** per installare l'estensione nelle istanze di IBM Cloud Logs.


## Modifica di un'estensione distribuita {: #extensions-mgmt-modify-ui ui}

Si potrebbe voler distribuire una nuova versione di un'estensione, distribuire risorse aggiuntive o modificare le applicazioni e i sottosistemi configurati come fonti di dati rilevanti per l'estensione.

Assicurarsi di mantenere selezionate tutte le risorse di quell'estensione che sono attualmente distribuite. Se sono state modificate risorse precedentemente distribuite da questa estensione, staccarle prima di eseguire l'aggiornamento. Se non si includono tutte le risorse precedentemente distribuite, quelle non incluse vengono rimosse.
{: attention}

Per aggiornare un'estensione, procedere come segue:

1. [Accedere al proprio account IBM Cloud](https://cloud.ibm.com/login){: external}.

2. [Accedere all'istanza di IBM Cloud Logs](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)

3. Fare clic sull'**icona Integrazioni** ![Icona Integrazioni](/icons/integrations.svg "Integrazioni") > **Estensioni**.

4. Fare clic sul riquadro dell'estensione distribuita che si desidera modificare.

5. Modificare i valori di *Applicazioni* e *Sottosistemi* secondo le necessità.

   Quando si aggiornano i valori delle *applicazioni* e dei *sottosistemi* nell'estensione, tutte le risorse dell'estensione distribuite vengono aggiornate con il nuovo elenco di *applicazioni* e *sottosistemi*.
   {: attention}

6. Fai clic su **Aggiorna**.

## Rimozione di un'estensione {: #extensions-mgmt-remove-ui ui}


Per rimuovere un'estensione già distribuita nella propria istanza, completare i passaggi seguenti:

1. [Accedere al proprio account IBM Cloud](https://cloud.ibm.com/login){: external}.

2. [Accedere all'istanza di IBM Cloud Logs](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)

3. Fare clic sull'**icona Integrazioni** ![Icona Integrazioni](/icons/integrations.svg "Integrazioni") > **Estensioni**.

4. Fare clic sul riquadro dell'estensione distribuita che si desidera rimuovere.

5. Fare clic su **- Rimuovi**.

6. Selezionare se si desidera eliminare o mantenere le risorse distribuite.

   Se si sceglie di eliminare le risorse distribuite, l'estensione viene eliminata insieme alle risorse distribuite dall'estensione nell'istanza IBM Cloud Logs.

   Se si sceglie di mantenere le risorse distribuite quando si elimina l'estensione, le risorse distribuite dall'estensione rimarranno nell'istanza di IBM Cloud Logs, ma non saranno più associate all'estensione. Se si distribuisce nuovamente l'estensione, verrà distribuita una nuova copia dell'estensione e le risorse distribuite in precedenza rimarranno nell'istanza di IBM Cloud Logs e non verranno sovrascritte.

7. Fai clic su **Remove**.

## Distacco delle risorse da un'estensione distribuita {: #extensions-mgmt-dettach-ui ui}

Per staccare le risorse da un'estensione distribuita, completare i seguenti passaggi:

1. [Accedere al proprio account IBM Cloud](https://cloud.ibm.com/login){: external}.

2. [Accedere all'istanza di IBM Cloud Logs](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)

3. Fare clic sull'**icona Integrazioni** ![Icona Integrazioni](/icons/integrations.svg "Integrazioni") > **Estensioni**.

4. Fare clic sul riquadro dell'estensione distribuita che si desidera rimuovere.

5. Fare clic su **- Rimuovi**.

6. Scegliere `Retain all assets` per mantenere le risorse modificate che vengono distribuite dall'estensione nell'istanza di IBM Cloud Logs.

7. Fai clic su **Remove**.

   Le risorse di distacco non saranno più associate all'estensione.

   Se si distribuisce nuovamente l'estensione, verrà distribuita una nuova copia dell'estensione e le risorse distribuite in precedenza rimarranno nell'istanza di IBM Cloud Logs e non verranno sovrascritte.


## Rimozione di un'estensione {: #extensions-mgmt-remove-api api}


Per eliminare un'estensione, è possibile eseguire la seguente chiamata API:

```text {: codeblock}
% curl -X DELETE --location --header "Authorization: Bearer ${IAM_TOKEN}"   --header "Accept: application/json"   "https://<ENDPOINT>/v1/extensions/<ExtensionID>/deployment"