サービス・コネクタを使用した他のOCIサービスからのログの収集

Oracle Logging Analyticsにログを収集して、そのログを分析し、問題のトラブルシューティング、ヘルスとパフォーマンスのモニター、およびOracle Cloud Infrastructureサービスでの運用タスクの監視を行うことができます。

サービス・コネクタを使用して、Oracle Cloud Infrastructureサービスをログのソースとして、Oracle Logging Analyticsを宛先として識別します。サービス・コネクタ・ハブの動作の詳細は、Oracle Cloud Infrastructureドキュメントサービス・コネクタ・ハブの概要を参照してください。

ノート

サービス・コネクタの作成後、ログを処理するためのエンティティが自動的に作成されます。適切なログ収集を保証するため、エンティティは削除しないでください。

Oracle Operator Access Controlログの場合、エンティティは自動的には作成されません。エンティティを作成するには、ログ出力リソースを表すエンティティの作成を参照してください。

トピック

重要: Oracleでは、ログ・アナリティクス・コンソールで使用可能なデータ取込みワークフローを使用して、他のOCIサービスからログをすばやく取り込むことをお薦めします。ログ・アナリティクスのホームまたはログ・エクスプローラに移動し、「コンパス」をクリックして、「データの追加」をクリックします。

  • OCI監査ログおよびIDCS監査ログを除くOCIサービスからのすべてのタイプのログについて、「OCIリソースのモニター」セクションを展開し、「OCIリソースのログ収集の構成」をクリックします。
  • 「OCI監査ログ」または「IDCS監査ログ」の場合は、「セキュリティおよびコンプライアンス」セクションを展開し、選択したログをクリックします。このワークフローでは、ポリシー、ログ・グループ、サービス・コネクタなどの必要なすべてのリソースが自動的に作成されます。

ワーク・フローの直感的なステップに従って、ログの取込みを開始します。前提条件として、ステップを完了するために必要な権限があることを確認します。ステップの簡単な説明は、Oracle Cloud Observability and Management Platformビデオ: 他のOCIサービスからのログ・アナリティクスへのログの迅速な取込み方法をご覧ください。

または、次のステップを実行して、ログ収集を手動で設定することもできます。

追加情報

  • ログを収集するためのOracle定義ソースのリスト: Oracle Cloud Infrastructureサービスからログを収集するためのOracle定義ソースのリストは、Oracle定義ソースを参照して、タイトルがOCI..のソースを検索します。

  • 収集できるサービス・ログのタイプ: Oracle Cloud Infrastructureサービスから収集できるログのタイプ、パーサー、サンプルのログ・コンテンツ、フィールドおよびJSONパスは、OCIパーサーの詳細を参照してください。

  • サービス・コネクタを介して収集されたログのフィルタ: サービス・コネクタのOCIDは、フィールドLog Originにマップされます。そのサービス・コネクタからOracle Logging Analyticsに移行したログを表示するには、ログをフィールドLog Originでフィルタします。固定された属性およびフィールドによるログのフィルタを参照してください。

OCIロギング・サービスからのログの収集の許可

収集するサービス・ログのタイプに基づいて、Oracle Logging Analyticsでリソースに関する情報を取得し、各リソースのエンティティを作成できるようにするポリシーを作成する必要があります。

ポリシーを作成すると、作成されるエンティティは、そのリソースから収集されたすべてのログに自動的に関連付けられます。ポリシーを作成しない場合、ログは収集されますが、エンティティは作成されません。

次の権限は、サービス・コネクタからOracle Logging Analyticsにログをアップロードするためのものです。OCIコンソールを使用してサービス・コネクタを作成すると、これらのポリシー・ステートメントを追加するように求められます。または、次のポリシー・ステートメントを含むポリシーを手動で作成できます:

allow any-user to {LOG_ANALYTICS_LOG_GROUP_UPLOAD_LOGS} in compartment id <Log_Group_Compartment_OCID> 
    where all 
    {request.principal.type = 'serviceconnector', 
    target.loganalytics-log-group.id = '<Log_Group_OCID>',
    request.principal.compartment.id = '<Service_Connector_Compartment_OCID>'}
allow group <userGroup> to MANAGE serviceconnectors in tenancy
allow group <userGroup> to READ logging-family in tenancy

上記の方針では、

  • Log_Group_Compartment_OCID: ログを格納する必要があるOracle Logging Analyticsのログ・グループのコンパートメントOCID。

  • Log_Group_OCID: ログを格納する必要があるOracle Logging Analyticsのログ・グループのOCID。

  • Service_Connector_Compartment_OCID: サービス・コネクタ・ハブのコンパートメントOCID。

ノート

サービスに初めてナビゲートするときに使用できるオンボーディングUIを使用してOracle Logging Analyticsを有効にした場合、一部のポリシーがすでに作成されます。ログ・アナリティクスのオンボーディング中に作成されるポリシーを参照してください。

各タイプのサービス・ログのポリシー

Oracle Logging Analyticsでは、サービス・コネクタを介して新しいログを受信したときに、基礎となるOCIリソースを表すエンティティが作成されます。OCIリソースから必要な情報を取得するには、Oracle Logging Analyticsに、OCIリソースへの少なくともreadアクセスを提供する必要があります。たとえば、VNICに関する情報を読み取るために、次のポリシーのいずれかを記述できます:

OCIリソースのREAD PRIVILEGEを含むポリシー・ステートメント:

allow service loganalytics to {VNIC_READ} in compartment <specify_compartment>

または

OCI RESOURCEの読取り動詞を含むポリシー文:

allow service loganalytics to read vnics in compartment <specify_compartment>

前述のポリシー・ステートメントは、コンパートメントへのreadアクセスを制限します。テナンシ全体へのアクセスを拡張するには、それに応じてポリシー・ステートメントを変更できます。

Oracle Logging Analyticsでは、サービス・コネクタを介したログ収集用に次のOCIリソースがサポートされています。OCIリソースのread verbを使用してポリシーを作成するか、前述のようにリソースにread privilegeを使用できます。

OCIリソースの説明 OCIリソース 読取り権限
Analytics Cloudインスタンス analytics-instances ANALYTICS_INSTANCE_READ
APIゲートウェイ api-gateways API_GATEWAY_READ
APMドメイン apm-domains APM_DOMAIN_READ
Kubernetes用のコンテナ・エンジン clusters CLUSTER_READ
データ・フロー(アプリケーション) dataflow-application DATAFLOW_APPLICATION_READ
データ統合ワークスペース dis-workspaces DIS_WORKSPACE_READ
データ・サイエンス・ジョブ data-science-jobs DATA_SCIENCE_JOB_READ
データ・サイエンス・モデルのデプロイメント data-science-model-deployments DATA_SCIENCE_MODEL_DEPLOYMENT_READ
DevOpsビルド・パイプライン devops-build-pipeline DEVOPS_BUILD_PIPELINE_READ
DevOpsビルド・パイプライン・ステージ devops-build-pipeline-stage DEVOPS_BUILD_PIPELINE_STAGE_READ
DevOpsビルド実行 devops-build-run DEVOPS_BUILD_RUN_READ
DevOpsデプロイメント devops-deployment DEVOPS_DEPLOY_DEPLOYMENT_READ
DevOpsデプロイメント・パイプライン devops-deploy-pipeline DEVOPS_DEPLOY_PIPELINE_READ
DevOpsデプロイメント・ステージ devops-deploy-stage DEVOPS_DEPLOY_STAGE_READ
電子メール配信サービス approved-senders APPROVED_SENDER_READ
イベント・サービス cloudevents-rules EVENTRULE_READ
機能(FNアプリケーション) fn-app FN_APP_READ
関数(FN関数) fn-function FN_FUNCTION_READ
GoldenGateデプロイメント goldengate-deployments GOLDENGATE_DEPLOYMENT_READ
インスタンス instances INSTANCE_READ
IPSecトンネル ipsec-connections IPSEC_CONNECTION_READ
Load Balancer load-balancers LOAD_BALANCER_READ
メディア・ワークフロー media-workflow MEDIA_WORKFLOW_READ
メディア・ワークフロー・ジョブ media-workflow-job MEDIA_WORKFLOW_JOB_READ
ネットワーク・ファイアウォール network-firewall NETWORK_FIREWALL_READ
オブジェクト・ストレージ(バケット) buckets BUCKET_READ
PostgreSQLを使用したOCIデータベース postgres-db-systems POSTGRES_DB_SYSTEM_READ
OICインスタンス integration-instance INTEGRATION_INSTANCE_READ
オペレータ・コントロール operator-control-family -
サービス・コネクタ serviceconnectors SERVICE_CONNECTOR_READ
VCN - VNIC vnics VNIC_READ
Webアプリケーション・ファイアウォール web-app-firewall WEB_APP_FIREWALL_READ
ノート

サービスに初めてナビゲートするときに使用できるオンボーディングUIを使用してOracle Logging Analyticsを有効にした場合、一部のポリシーがすでに作成されます。ログ・アナリティクスのオンボーディング中に作成されるポリシーを参照してください。

ログを収集するためのサービス・コネクタの設定

ログを収集するためのサービス・コネクタを設定する前に、収集するログのコンパートメントおよびログ・グループを識別してください。

次の例のステップでは、Oracle Cloud Infrastructure LoggingサービスからVCNサービス・ログを収集する方法を示します:

  1. これは、Oracle Cloud Infrastructure Loggingサービスでログを有効にする方法を示す推奨ステップです。

    Oracle Cloud Infrastructure Loggingサービスに移動し、「ログ」に移動します。

    「リソース・ログの有効化」をクリックして、VCNサービス・ログを有効にします。ダイアログ・ボックスが開きます。

    1. リソース・コンパートメントを選択します。
    2. サービスを選択します。たとえば、仮想クラウド・ネットワーク(サブネット)
    3. リソースを選択します。たとえば、VCNリソース。
    4. 「ログの構成」で、フロー・ログなどのログ・カテゴリとログ名を選択します。
    5. 「ログの場所」で、Oracle Logging Analyticsがログを参照するコンパートメントとログ・グループを選択します。

    「ログの有効化」をクリックします。

  2. ログのソース・サービスおよびターゲットのOracle Logging Analyticsを指定して、サービス・コネクタを設定します。これは、Oracle Cloud Infrastructureサービス・コネクタ・ハブと統合されているソース・サービス(Oracle Cloud Infrastructure Loggingサービスなど)から、または直接Oracle Cloud Infrastructureサービス・コネクタ・ハブから設定できます。

    Oracle Cloud Infrastructure Loggingサービスに移動し、「サービス・コネクタ」に移動して、「コネクタの作成」をクリックします。

    または、Oracle Cloud Infrastructureサービス・コネクタ・ハブ・サービスに移動し、「サービス・コネクタの作成」をクリックします。

    「サービス・コネクタの作成」ページが開きます。

    1. コネクタの名前を入力し、説明を指定します。
    2. コネクタ・リソースを作成する必要があるリソース・コンパートメントを選択します。
    3. 「サービス・コネクタの構成」で、ロギングソース・サービスとして、ログ・アナリティクスターゲット・サービスとして指定します。
    4. 「ソース接続の構成」で、サービスから収集するログの詳細(VCNサービス・ログなど)を指定します。

      コンパートメント名、ログが属しているログ・グループ、およびステップ1で構成したログの名前を選択します。

    同じサービス・コネクタを構成して、より多くのログを収集できます。「別のログ」をクリックし、ステップ2-dを繰り返します。

    オプションで、「タスクの構成」でフィルタを作成できます。

    「コネクタの作成」をクリックします。

サービス・コネクタの作成後、選択したログがOracle Logging Analyticsで使用できることを確認できます。

OCIロギング・サービスからのクロステナンシ・ログ収集の許可

ログを収集するOracle Cloud Infrastructure Loggingなどのソース・サービスのテナントをSource_Tenantとします。サービス・コネクタを作成するテナントをTarget_Tenantとします。サービス・コネクタは、ソース・サービスから収集されるログのターゲットがOracle Logging Analyticsとなるように構成されます。サービス・コネクタ・ハブとOracle Logging Analyticsが同じターゲット・テナントで使用できると想定しています。

次のポリシーを設定して、サービス・コネクタが作成されるテナンシとは異なるテナンシからのログ収集を構成します。

ソース・テナントに追加するポリシー

次に、サービス・コネクタ・ハブ・テナンシの任意のユーザーがロギング・サービスに対してREADアクセス権を持つことを許可するポリシー・ステートメントの例を示します:

define tenancy <Target_Tenant> as <Target_Tenant_OCID>
define group <Common_User_Group> as <Common_User_Group_OCID>
admit any-user of tenancy <Target_Tenant> to read logging-family IN TENANCY WHERE ALL {request.principal.type = 'serviceconnector'}
admit group <Common_User_Group> of tenancy <Target_Tenant> to read logging-family IN TENANCY

ソース・サービスから収集する必要があるサービス・ログのタイプに対してポリシーを設定してください。OCIロギング・サービスからのログの収集の許可を参照してください。

ターゲット・テナントに追加するポリシー

次に、任意のユーザーがサービス・コネクタ・ハブを介してロギング・サービスにアクセスできるようにし、ターゲットIAMグループCommon_User_Groupがサービス・コネクタ・ハブに対してMANAGEアクセス権を持つことを許可するポリシー・ステートメントの例を示します:

define tenancy <Source_Tenant> as <Source_Tenant_OCID>
endorse any-user to read logging-family IN tenancy <Source_Tenant> WHERE ALL {request.principal.type = 'serviceconnector'}
endorse group <Common_User_Group> to read logging-family IN tenancy <Source_Tenant>

次の権限は、サービス・コネクタからOracle Logging Analyticsにログをアップロードするためのものです。次のポリシー文を含むポリシーを必ず手動で作成してください:

allow any-user to {LOG_ANALYTICS_LOG_GROUP_UPLOAD_LOGS} in compartment id <Log_Group_Compartment_OCID> 
    where all 
    {request.principal.type = 'serviceconnector', 
    target.loganalytics-log-group.id = '<Log_Group_OCID>',
    request.principal.compartment.id = '<Service_Connector_Compartment_OCID>'}
allow group <Common_User_Group> to MANAGE serviceconnectors in tenancy

上記の方針では、

  • Log_Group_OCID: Oracle Logging Analyticsログ・グループのOCID。

  • Log_Group_Compartment_OCID: Oracle Logging Analyticsログ・グループが配置されているコンパートメントのOCID。

  • Service_Connector_Compartment_OCID: サービス・コネクタのコンパートメントOCID。

  • Common_User_Group: サービス・コネクタを作成するユーザー・グループ。

ソース・テナントとターゲット・テナント間のコネクタの作成

ソースおよびターゲット・テナントに必要なポリシーが作成されたら、CLIを使用してサービス・コネクタを作成します。次のCLIコマンドの例では、Loggingをソースとして指定し、Oracle Logging Analyticsをクロステナンシ・サービス・コネクタを作成するためのターゲットとして指定します:

oci --profile <Target_Profile> sch service-connector create 
    --display-name XTenancyConnector 
    --compartment-id <Connector_Compartment_OCID> 
    --source '{ "kind": "logging", "logSources": 
        [ { "compartmentId": "<Logging_LogGroup_Compartment_OCID>", 
            "logGroupId": "<Logging_LogGroup_OCID>" } ] }' 
    --target '{ "kind": "loggingAnalytics", "logGroupId": "<LoggingAnalytics_LogGroup_OCID>" }'

前述のコマンドは、読みやすくするためにフォーマットされています。改行タブスペースなどの文字を削除してから実行してください。

前述のCLIコマンドで、

  • Target_Profile: ターゲット・テナンシにマップされる.oci/configファイル内のプロファイル。

  • Connector_Compartment_OCID: サービス・コネクタ・リソースが作成されるコンパートメントのOCID。

  • Logging_LogGroup_Compartment_OCID: Oracle Cloudロギング・ログ・グループが属するコンパートメントのOCID。これはソース・テナントにあります。

  • Logging_LogGroup_OCID: Oracle Cloud Loggingのログ・グループのOCID。これはソース・テナントにあります。

  • LoggingAnalytics_LogGroup_OCID: Oracle Logging Analyticsログ・グループのOCID。これはターゲット・テナントにあります。

CLIコマンドの詳細は、CLIコマンド・リファレンス- Createを参照してください。

サービス・コネクタの作成後、選択したログがOracle Logging Analyticsで使用できることを確認できます。