mcpField
S
sap-btp-cloud-logging

sap-btp-cloud-logging

github.com/secondskyクラウド・DevOps480868 回インストール3 週間前に更新
リポジトリ

sap-btp-cloud-logging について

SAP BTP の運用担当者向けに、Cloud Logging の設定とトラブルシューティングを案内するスキルです。複数のランタイムからのデータ取り込み、ダッシュボード、証明書、認証、復旧を扱います。

主な機能

  1. 01Cloud Logging インスタンスの設定
  2. 02ログ、メトリクス、トレースの取り込み
  3. 03保持期間とサービスプランの設定
  4. 04証明書と SAML の管理
  5. 05ダッシュボードとアラートの作成
  6. 06取り込みとアクセスの問題の調査

活用シーン

  1. 01Cloud Foundry または Kyma のログ取り込み設定
  2. 02OTLP または JSON API によるテレメトリ送信
  3. 03取り込みを中断しない証明書のローテーション
  4. 04ダッシュボードの設定とアラートの調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/secondsky/sap-skills --skill sap-btp-cloud-logging

インストール後、Claude Code で/sap-btp-cloud-loggingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
agents/
openai.yaml
references/
cf-ingestion.md
configuration-parameters.md
json-api-ingestion.md
kyma-ingestion.md
opentelemetry-ingestion.md
saml-authentication.md
service-plans.md

詳細

SAP BTP Cloud Logging スキル

関連スキル

  • sap-btp-cloud-platform:BTP サブアカウントのセットアップ、エンタイトルメント、ランタイムコンテキストに使用します
  • sap-btp-cloud-identity-services:SAML/IAS 認証と信頼設定に使用します
  • sap-btp-developer-guide:CAP および BTP アプリ全体のアプリケーション可観測性パターンに使用します
  • sap-btp-best-practices:本番環境のモニタリングと運用ガバナンスに使用します

このスキルを使用する場合

Cloud Logging インスタンスの作成、サービスプランの選択、Cloud Foundry/Kyma/OpenTelemetry/JSON の取り込み設定、証明書のローテーション、OpenSearch ダッシュボードのセットアップ、SAML の有効化、ログ、メトリクス、トレース、アラートの欠落に関するトラブルシューティングを行う場合に、このスキルを使用します。

目次

サービス概要

SAP Cloud Logging は、OpenSearch を基盤とするインスタンスベースの可観測性サービスです。SAP BTP Cloud Foundry、Kyma、Kubernetes、およびその他のランタイム環境からアプリケーションのログ、メトリクス、トレースを保存、可視化、分析します。

主な機能:

  • OpenTelemetry(OTLP)または JSON API を介したログ、メトリクス、トレースの取り込み
  • Cloud Foundry ランタイムからのアプリケーションログとリクエストログの取り込み
  • データ保持期間の設定(1~90 日)
  • OpenSearch Dashboards でのデータの可視化と分析
  • カスタムダッシュボードとアラートの作成
  • SAP Identity Authentication Service を介した SAML 認証

サービスプラン

プラン容量用途自動スケーリング
dev7.5 GB 固定評価のみいいえ
standard75 GB - 375 GB本番環境(100 ログ/秒)はい
large750 GB - 3.75 TB本番環境(1000 ログ/秒)はい

重要: プランの更新はサポートされていません。移行するには、インスタンスを並行して稼働させる必要があります。


クイックスタート

前提条件
  1. SAP BTP グローバルアカウント
  2. Cloud Logging のエンタイトルメントがあるサブアカウント
  3. (推奨)SAML 認証用の SAP Cloud Identity Services テナント

SAP Build Code のユーザーへの注意: SAP Build Code を使用する場合は、SAP Build Code の初期セットアップ手順に従ってください。SAP Build Code の Cloud Logging は、評価目的のみで利用できます。

インスタンスの作成方法

ワークフローに応じて、次のいずれかの方法を選択してください。

オプション 1:SAP BTP Cockpit(UI)

  1. サブアカウント → インスタンスとサブスクリプション → 作成に移動します
  2. cloud-logging サービスとプランを選択します
  3. パラメーターを設定します(「設定」セクションを参照)
  4. 資格情報用のサービスキーを作成します

オプション 2:Cloud Foundry CLI

cf create-service cloud-logging standard my-cls-instance -c '{
  "retention_period": 14,
  "backend": { "max_data_nodes": 10 },
  "ingest": { "max_instances": 10 }
}'

# Wait for provisioning
cf services  # Check "last operation" status

# Create service key
cf create-service-key my-cls-instance my-cls-key
cf service-key my-cls-instance my-cls-key

オプション 3:SAP BTP CLI

btp create services/instance \
  --subaccount <SUBACCOUNT_ID> \
  --name my-cls-instance \
  --offering-name "cloud-logging" \
  --plan-name standard \
  --parameters '{"retention_period": 14}'

# Create binding
btp create services/binding \
  --subaccount <SUBACCOUNT_ID> \
  --name my-cls-binding \
  --instance-name my-cls-instance

# Get credentials
btp get services/binding --name my-cls-binding --subaccount <SUBACCOUNT_ID>

オプション 4:SAP BTP Service Operator(Kubernetes/Kyma)

apiVersion: services.cloud.sap.com/v1
kind: ServiceInstance
metadata:
  name: cloud-logging-instance
  namespace: sap-cloud-logging-integration
spec:
  serviceOfferingName: cloud-logging
  servicePlanName: standard
  parameters:
    retentionPeriod: 14
---
apiVersion: services.cloud.sap.com/v1
kind: ServiceBinding
metadata:
  name: cls-binding
  namespace: sap-cloud-logging-integration
spec:
  serviceInstanceName: cloud-logging-instance
  secretName: sap-cloud-logging

設定パラメーター

パラメーター型デフォルト説明
retention_periodint7データの保持期間(日数、1~90)
backend.max_data_nodesint10OpenSearch データノードの最大数(2~10)
dashboards.custom_labelstring-ダッシュボードの識別子(最大 20 文字)
ingest.max_instancesint10オートスケーリング時の最大取り込みインスタンス数(2~10)
ingest.min_instancesint2最小取り込みインスタンス数(2~10)
ingest_otlp.enabledboolfalseOpenTelemetry Protocol による取り込みを有効にします
feature_flagsarray[]実験的な機能(例:upgradeToOpenSearchV2)
rotate_root_caboolfalseCA 証明書のローテーションを開始します
samlobject-SAML 認証の設定
設定の全例
{
  "retention_period": 14,
  "feature_flags": ["upgradeToOpenSearchV2"],
  "dashboards": {
    "custom_label": "PROD-CLS"
  },
  "backend": {
    "max_data_nodes": 10
  },
  "ingest": {
    "max_instances": 10,
    "min_instances": 2
  },
  "ingest_otlp": {
    "enabled": true
  },
  "saml": {
    "enabled": true,
    "initiated": true,
    "admin_group": "CLS-Admins",
    "roles_key": "groups",
    "idp": {
      "metadata_url": "https://<tenant>.accounts.ondemand.com/saml2/metadata",
      "entity_id": "https://<tenant>.accounts.ondemand.com"
    },
    "sp": {
      "entity_id": "cloud-logging-<instance-id>"
    }
  }
}

データの取り込み方法

1. Cloud Foundry ランタイム

アプリケーションを Cloud Logging インスタンスに直接バインドします。

cf bind-service <app-name> <cls-instance>

インデックスパターン:

  • logs-cfsyslog-* - アプリケーションログ
  • metrics-otel-v1-* - リソースメトリクス

mTLS を使用するユーザー提供サービスについては、references/cf-ingestion.md を参照してください。

2. Kyma ランタイム

telemetry モジュールと btp-operator モジュールを有効にする必要があります。

# Create namespace
kubectl create namespace sap-cloud-logging-integration

# Deploy ServiceInstance and ServiceBinding (see templates above)
kubectl apply -n sap-cloud-logging-integration -f cls-instance.yaml

インデックスパターン:

  • logs-json-istio-envoy-kyma* - Istio アクセスログ
  • logs-json-kyma* - アプリケーションログ
3. OpenTelemetry API(OTLP)

ingest_otlp.enabled: true で有効にしてから、アプリケーションを設定します。

サービスキーの資格情報:

  • ingest-otlp-endpoint - gRPC エンドポイント(ホスト名:443)
  • ingest-otlp-cert - クライアント証明書(PEM)
  • ingest-otlp-key - 秘密鍵(PKCS#8)
  • server-ca - サーバー CA 証明書

インデックスパターン:

  • logs-otel-v1-* - ログ
  • metrics-otel-v1-* - メトリクス
  • otel-v1-apm-span-* - トレース
  • otel-v1-apm-service-map - サービスマップ

注: 対応しているのは gRPC プロトコルのみです。http/protobuf または http/json を変換するには、OpenTelemetry Collector を使用してください。

Java/Node.js の自動化ライブラリについては、references/opentelemetry-ingestion.md を参照してください。

4. JSON API

mTLS を使用して、HTTP 経由でログを送信します。

curl -X PUT "https://<ingest-endpoint>/v1/ingest" \
  --cert client.crt --key client.key \
  -H "Content-Type: application/json" \
  -d '[{"msg": "log message", "date": "2025-01-15T10:30:00Z"}]'

インデックスパターン: logs-json-*

Fluent Bit の設定については、references/json-api-ingestion.md を参照してください。


証明書の管理

証明書の有効期間
  • デフォルト:90 日
  • 設定可能:バインディングパラメーターの certValidityDays で 1~180 日
ルート CA のローテーション(3 ステップの手順)

注意: この手順に従わない場合、データの取り込みが中断します。

  1. 新しい CA を作成: インスタンスを "rotate_root_ca": true に更新します
  2. すべてのアプリケーションを再バインド: 各ログ送信方式に対して新しいバインディングを作成します
  3. 古い CA を削除: インスタンスを "rotate_root_ca": false に更新します

OpenSearch Dashboards

アクセス
  1. サービスバインディングまたはキーを作成します
  2. 資格情報に記載された dashboards-url に移動します
  3. 認証します(SAML または基本認証)
事前構築済みダッシュボード
  • Cloud Foundry アプリケーションのパフォーマンス
  • リクエストのレイテンシとエラー率
  • リソース使用率のメトリクス
カスタムダッシュボードとアラート
  • 特定の分析ニーズに合わせてカスタムダッシュボードを作成します
  • オブザーバビリティデータに基づいてアラートを設定します
  • 高度なアラートワークフローのために、SAP Alert Notification for SAP BTP と連携します
インデックスパターンの概要
ソースインデックスパターン
CF ログlogs-cfsyslog-*
CF メトリクスmetrics-otel-v1-*
OTLP ログlogs-otel-v1-*
OTLP メトリクスmetrics-otel-v1-*
OTLP トレースotel-v1-apm-span-*
JSON APIlogs-json-*
Kyma アプリlogs-json-kyma*
Kyma Istiologs-json-istio-envoy-kyma*

注: OpenSearch/Lucene の制限により、属性名には . ではなく @ を使用します。


セキュリティのベストプラクティス

セキュリティに関する推奨事項
  • BTP-CLS-0001: Identity Authentication Service で SAML 認証を設定します(重大)
  • BTP-CLS-0002: サービスキーを定期的にローテーションします。削除しても認証情報は自動的に無効になりません
  • BTP-CLS-0003: Kyma ランタイムと JSON API のセキュリティ設定を確認します

注: 現在、SAP Cloud ALM に報告されるのは BTP-CLS-0001(重大レベル)のみです。その他の推奨事項は手動で確認する必要があります。

SAML 認証の設定
  1. SAP Identity Authentication で SAML 2.0 アプリケーションを作成します
  2. Identity Directory の「groups」属性を設定します
  3. Name ID Format を「E-mail」に設定します
  4. リクエスト署名を有効にします(推奨)
  5. インスタンス設定で saml パラメーターを設定します
  6. admin_group は all_access ロールにマッピングされます

詳しい設定については、references/saml-authentication.md を参照してください。


バックアップと復旧

自動バックアップ

バックアップ対象: OpenSearch の設定、ロール、ロールマッピング、テナント、グループ、セキュリティ設定、保存済みオブジェクト、ISM ポリシー バックアップ対象外: アラート

復元プロセス

コンポーネント BC-CP-CLS を指定して SAP サポートチケットを作成し、以下を含めます。

  1. ダッシュボード URL
  2. インスタンス設定
  3. プロビジョニング解除のタイムスタンプ
  4. 復元先の日付(最大 7 日間)
  5. 所有者情報
  6. ビジネス上の正当な理由

よくある問題とトラブルシューティング

インスタンスの作成に失敗する
  • サブアカウントのエンタイトルメントを確認します
  • リージョンでサービスプランが利用可能か確認します
  • JSON 設定の構文を検証します
データ取り込みが機能しない
  • バインドの認証情報が最新であることを確認します(証明書の有効期限を確認)
  • CF の場合:再ステージングせずにバインドが有効になります
  • OTLP の場合:ingest_otlp.enabled: true が設定されていることを確認します
  • 取り込みエンドポイントへのネットワーク接続を確認します
ダッシュボードへのアクセスに関する問題
  • 有効にしている場合は、SAML の設定を確認します
  • ユーザーが設定済みの管理者グループに属していることを確認します
  • IdP メタデータ URL にアクセスできることを確認します
証明書の有効期限切れ
  • デフォルトの有効期間:90 日
  • 有効期限が切れる前に新しいバインドを作成します
  • 広範囲に影響する場合は、ルート CA のローテーションを検討します

参考ファイル

詳しい情報については、同梱の参考ファイルを参照してください。

設定とセットアップ
  • references/service-plans.md(183 行)- サービスプランの比較と容量計画
  • references/configuration-parameters.md(270 行)- 例を含むパラメーターの完全なリファレンス
取り込み方法
  • references/cf-ingestion.md(211 行)- Cloud Foundry のデータ取り込みの詳細
  • references/kyma-ingestion.md(293 行)- Kyma ランタイムとの統合
  • references/opentelemetry-ingestion.md(363 行)- Java/Node.js の自動化を含む OTLP のセットアップ
  • references/json-api-ingestion.md(435 行)- JSON API と Fluent Bit の設定
セキュリティと認証
  • references/saml-authentication.md(329 行)- Identity Authentication Service を使用した SAML の設定

ドキュメントへのリンク

公式ソース

同梱リソース

参考ドキュメント
  • references/cf-ingestion.md - Cloud Foundry ランタイムの取り込みガイド
  • references/kyma-ingestion.md - Kyma/Cloud Foundry Kyma ランタイムの取り込み
  • references/opentelemetry-ingestion.md - OpenTelemetry データの取り込み
  • references/json-api-ingestion.md - JSON API の取り込み方法
  • references/saml-authentication.md - SAML 認証の設定
  • references/service-plans.md - サービスプランの比較と選択
関連ドキュメント

データ保護に関する注意事項

SAP Cloud Logging は、個人データや業務上重要なデータを対象として設計されていません。そのようなデータの送信を防ぐための対策を講じてください。データはリージョン内に保存されますが、物理的なデータセンターの所在地は、同一リージョン内の利用拠点と異なる場合があります。

コメント