IBM Cloud Logs 拡張機能の管理
IBM Cloud Logs では、エクステンションはログデータを管理するための設定をすぐに提供する。 エクステンションには、アラート、解析ルール、ダッシュボードなど、あらかじめ定義されたリソース定義のセットが含まれており、これを使用することで、エクステンションに関連するデータを素早く立ち上げ、監視し、アラートを出すことができます。
-
選択したアプリケーションとサブシステムのコンテキストに、エクステンションのすべてのリソースまたはリソースのサブセットをデプロイできます。
-
エクステンションは、UIを使ってグラフィカルに管理することも、APIを使ってプログラムで管理することもできます。
-
エクステンションからリソースをデプロイした後、それらをカスタマイズすることができます。
定義済みリソースへのカスタム変更の上書きを防ぐには、これらのリソースをエクステンションの配置から切り離す必要があります。 リソースのデタッチは、UIを介してグラフィカルにしかできない。
-
エクステンションはタイプ別に分類されている。 有効な型は
SecurityおよびObservabilityである。 -
エクステンションには、フィルタリングに使用できるラベルが含まれています。 例えば、
IBMというタグは、 IBM Cloud を監視するために使用できる拡張子に関連付けられています。 -
拡張機能には、定義済みのアラート、解析ルール、Event to Metrics定義、ダッシュボード、エンリッチメントが含まれます。
利用可能な拡張子のリスト
以下のリストは、ログを監視するために導入できる拡張機能の概要です:
-
システム・モニタリング :システムのパフォーマンスや IBM Cloud Logs インスタンスの使用状況を把握するために使用します。
-
アクティビティトラッキング : IBM Cloud のアクティビティ・トラッキング・データに関する洞察を得るためにご利用ください。
-
IBM Cloud Kubernetes Service: IBM Cloud Kubernetes Service のログを見ることができます。
-
IBM Cloud® Databases for MySQL: IBM Cloud® Databases for MySQL のログを見ることができます。
-
IBM Cloud Databases for PostgreSQL: IBM Cloud Databases for PostgreSQL のログを見ることができます。
-
IBM® Cloudant® for IBM Cloud®: IBM® Cloudant® for IBM Cloud® のログを見ることができます。
-
Cloudflare : Cloudflareのログを見ることができます。
-
IBM Cloud® Databases for Redis: IBM Cloud Databases for Redis のログを見ることができます。
-
Linux: Linux のログを見ることができます。
-
MongoDB: MongoDB のログを見ることができます。
-
NGINX:nginxのログを洞察するために使用します。
IDによる利用可能な拡張子のリスト
次の表は、Extensions API を使用する際に使用しなければならない拡張機能の ID の一覧です:
| 内線 | ID |
|---|---|
| システム・モニター | SystemMonitoring |
| Activity Tracking | 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 |
| IBM Cloud® Databases for Redis | IBMRedis |
| Linux | Linux |
| MongoDB | MongoDB |
| NGINX | NGINX |
API メソッド
次の表は、エクステンションを管理するために実行できるアクションの一覧です:
| アクション | REST API メソッド | API_URL |
|---|---|---|
| 拡張子のリストの作成 | GET |
<ENDPOINT>/v1/extensions |
| IDで拡張子を取得する | GET |
<ENDPOINT>/v1/extensions/{id} |
| 拡張機能のデプロイの詳細を取得する | GET |
<ENDPOINT>/v1/extensions/{id}/deployment |
| 拡張機能を展開する | PUT |
<ENDPOINT>/v1/extensions/{id}/deployment |
| 拡張機能の更新 | PUT |
<ENDPOINT>/v1/extensions/{id}/deployment |
| 拡張機能の削除 | DELETE |
<ENDPOINT>/v1/extensions/{id}/deployment |
エクステンションの管理には、パブリックまたはプライベートの ENDPOINT を使用できます。 エンドポイントの詳細については、 サービスAPIのエンドポイントを 参照のこと。
REST APIの詳細については、 拡張機能を 参照してください。
UIから利用可能な拡張機能のリストを取得する
IBM Cloud Logs UIから利用可能なエクステンションを確認するには、以下の手順を実行します:
-
Integrations アイコン
> Extensionsをクリックします。
利用可能な拡張子のリストが表示されます。
APIを使用して利用可能な拡張機能のリストを取得する
デプロイ可能なエクステンションのリスト(デプロイされているエクステンションの追加情報を含む)を取得するには、以下の手順を実行します:
-
認証トークンを取得します。 API経由の認証 を参照のこと。
-
エクステンションを管理するインスタンスのエンドポイントを取得します。 サービスAPIエンドポイント 」を参照。
-
エクステンションごとのバージョンとデプロイされたリソースを含む、すべてのエクステンションの一覧を表示します。
curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<API_ENDPOINT>/v1/extensions"
APIを使用してデプロイされた拡張機能のリストを取得する
IBM Cloud Logs インスタンスにデプロイされているエクステンションの情報を取得するには、 Get list of extensions メソッドを使用します。 情報には、バージョンや配備されたリソースの詳細が含まれる。
例えば、以下の手順を実行する:
-
認証トークンを取得します。 API経由の認証 を参照のこと。
-
拡張機能をデプロイするインスタンスのエンドポイントを取得します。 サービスAPIエンドポイント 参照。
-
配置されたエクステンションの詳細を取得する。
curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<API_ENDPOINT>/v1/extensions?deployed=true"
APIを使用してデプロイされていないエクステンションのリストを取得する
IBM Cloud Logs インスタンスにまだデプロイされていないエクステンションの情報を取得するには、 Get list of extensions メソッドを使用します。
例えば、以下の手順を実行する:
-
認証トークンを取得します。 API経由の認証 を参照のこと。
-
拡張機能をデプロイするインスタンスのエンドポイントを取得します。 サービスAPIエンドポイント 参照。
-
配置されたエクステンションの詳細を取得する。
curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<API_ENDPOINT>/v1/extensions?deployed=false"
APIを使用した拡張機能のデプロイ
拡張機能に含まれるリソースをデプロイするには、API メソッド Deploy を使用するか、拡張機能のデプロイを更新 します。
エクステンションをデプロイするには、以下の手順を実行します:
-
認証トークンを取得します。 API経由の認証 を参照のこと。
-
拡張機能をデプロイするインスタンスのエンドポイントを取得します。 サービスAPIエンドポイント 参照。
-
デプロイしたい拡張機能のIDを取得する。 利用可能な拡張子のリストを 参照してください。
-
配置されたリソースに関する情報を含む、IDによる拡張機能の詳細を取得する。
curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<API_ENDPOINT>/v1/extensions/<ExtensionID>"例えば、 Kubernetes の拡張子の情報を得るには、次のように実行する:
curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<ENDPOINT>/v1/extensions/IBMCloudKubernetes"以下のような応答が表示される:
{ "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" } ] } -
拡張機能をデプロイします。 例えば、以下の cURL コマンドを実行して、 Kubernetes 拡張機能を部分的にデプロイすることができる。 このサンプルはダッシュボードと2つのアラートを作成します:
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://
## APIを使用した拡張機能の更新 {: #extensions-mgmt-update-api api}
エクステンションの新バージョンをデプロイしたり、追加リソースをデプロイしたり、エクステンションに関連するデータソースとして設定されているアプリケーションやサブシステムを変更したりしたい場合があるかもしれません。 エクステンションに含まれるリソースを更新するには、API メソッド [Deploy](/apidocs/logs-service-api#update-extension-deployment) を使用します。
エクステンションを更新するには、以下の手順を実行します:
APIコールで、現在デプロイされているエクステンションのリソースをすべて指定してください。 この拡張機能から以前にデプロイしたリソースを変更した場合は、アップデートを実行する前にリソースを取り外してください。 以前に配置したすべてのリソースを含めなかった場合、含まれていないリソースは削除されます。
{: attention}
1. 認証トークンを取得します。 [API経由の認証](/apidocs/logs-service-api#authentication) を参照のこと。
2. 拡張機能をデプロイするインスタンスのエンドポイントを取得します。 [サービスAPIエンドポイント](/docs/cloud-logs?topic=cloud-logs-endpoints_api) 参照。
3. デプロイしたい拡張機能のIDを取得する。 [利用可能な拡張子のリストを](#extensions-mgmt-list) 参照してください。
4. 配置されたリソースに関する情報を含む、IDによる拡張機能の詳細を取得する。 デプロイメントセクションをチェックして、すでにデプロイされているリソースを確認する。
```text {: codeblock}
curl -X GET --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<API_ENDPOINT>/v1/extensions/<ExtensionID>"
-
エクステンションを更新する。 例えば、以下の cURL コマンドを実行して、 Kubernetes 拡張機能を更新し、1つのダッシュボードと1つのアラートだけを残すことができる:
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://
## 拡張機能の展開 {: #extensions-mgmt-deploy-ui ui}
エクステンションをデプロイするには、以下の手順を実行します:
1. [IBM Cloud アカウントにログインして](https://cloud.ibm.com/login){: external}ください。
2. [IBM Cloud Logs インスタンスにアクセスする](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)
3. **Integrationsアイコン**  > **Extensionsを**クリックします。
4. デプロイしたいエクステンションのタイルで **Deployを**クリックします。
5. 拡張機能を適用する*アプリケーションと* *サブシステムを*選択します。
6. デフォルトでは、エクステンションで定義されたすべてのものがデプロイされます。 配置したくない項目のチェックマークを外すことができます。
7. **デプロイ]** をクリックして、 IBM Cloud Logs インスタンスに拡張機能をインストールします。
## デプロイされた拡張機能の変更 {: #extensions-mgmt-modify-ui ui}
エクステンションの新バージョンをデプロイしたり、追加リソースをデプロイしたり、エクステンションに関連するデータソースとして設定されているアプリケーションやサブシステムを変更したりしたい場合があるかもしれません。
現在配備されているエクステンションのリソースをすべて選択しておくこと。 この拡張機能から以前にデプロイしたリソースを変更した場合は、アップデートを実行する前にリソースを取り外してください。 以前に配置したすべてのリソースを含めなかった場合、含まれていないリソースは削除されます。
{: attention}
エクステンションを更新するには、以下の手順を実行します:
1. [IBM Cloud アカウントにログインして](https://cloud.ibm.com/login){: external}ください。
2. [IBM Cloud Logs インスタンスにアクセスする](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)
3. **Integrationsアイコン**  > **Extensionsを**クリックします。
4. 変更したいデプロイ済みエクステンションのタイルをクリックします。
5. 必要に応じて、 *Applicationsと* *Subsystemsの*値を変更してください。
エクステンションの*アプリケーションと* *サブシステムの*値を更新すると、デプロイしたエクステンションのすべてのリソースが、新しい*アプリケーションと* *サブシステムの*値のリストで更新されます。
{: attention}
6. **更新** をクリックします。
## 拡張機能の削除 {: #extensions-mgmt-remove-ui ui}
インスタンスにデプロイ済みのエクステンションを削除するには、以下の手順を実行します:
1. [IBM Cloud アカウントにログインして](https://cloud.ibm.com/login){: external}ください。
2. [IBM Cloud Logs インスタンスにアクセスする](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)
3. **Integrationsアイコン**  > **Extensionsを**クリックします。
4. 削除したい拡張機能のタイルをクリックします。
5. クリック **- 削除**。
6. デプロイされたアセットを削除するか、残すかを選択します。
デプロイされたアセットを削除することを選択した場合、 IBM Cloud Logs インスタンスでエクステンションによってデプロイされたアセットと一緒にエクステンションも削除されます。
拡張機能を削除するときにデプロイされたアセットを保持することを選択した場合、拡張機能によってデプロイされたアセットは IBM Cloud Logs インスタンスに残りますが、拡張機能とは関連付けられなくなります。 拡張機能を再度デプロイすると、拡張機能の新しいコピーがデプロイされ、以前にデプロイされたアセットは IBM Cloud Logs インスタンスに残り、上書きされません。
7. **「削除」** をクリックします。
## 配置された拡張機能からリソースを切り離す {: #extensions-mgmt-dettach-ui ui}
配置したエクステンションからリソースを切り離すには、以下の手順を実行します:
1. [IBM Cloud アカウントにログインして](https://cloud.ibm.com/login){: external}ください。
2. [IBM Cloud Logs インスタンスにアクセスする](/docs/cloud-logs?topic=cloud-logs-instance-launch#instance-launch-cloud-ui)
3. **Integrationsアイコン**  > **Extensionsを**クリックします。
4. 削除したい拡張機能のタイルをクリックします。
5. クリック **- 削除**。
6. `Retain all assets` を選択すると、エクステンションによってデプロイされた変更されたアセットが IBM Cloud Logs インスタンスに保持されます。
7. **「削除」** をクリックします。
デタッチリソースは、もはや拡張機能に関連付けられていません。
拡張機能を再度デプロイすると、拡張機能の新しいコピーがデプロイされ、以前にデプロイされたアセットは IBM Cloud Logs インスタンスに残り、上書きされません。
## 拡張機能の削除 {: #extensions-mgmt-remove-api api}
拡張機能を削除するには、以下のAPIコールを実行します:
```text {: codeblock}
% curl -X DELETE --location --header "Authorization: Bearer ${IAM_TOKEN}" --header "Accept: application/json" "https://<ENDPOINT>/v1/extensions/<ExtensionID>/deployment"