サービス・コネクタを使用した他のOCIサービスからのログの収集
Oracle Log Analyticsにログを収集して、そのログを分析して、問題のトラブルシューティング、ヘルとパフォーマンスのモニター、およびOracle Cloud Infrastructureサービスでの運用タスクの監視を行うことができます。
サービス・コネクタを使用して、Oracle Cloud Infrastructureサービスをログのソースとして、Oracle Log Analyticsを宛先として識別します。サービス・コネクタ・ハブの動作の詳細は、Oracle Cloud Infrastructureドキュメントのサービス・コネクタ・ハブの概要を参照してください。
サービス・コネクタの作成後、ログを処理するためのエンティティが自動的に作成されます。適切なログ収集を保証するため、エンティティは削除しないでください。
Oracle Operator Access Controlログの場合、エンティティは自動的には作成されません。エンティティを作成するには、「ログ出力リソースを表すエンティティの作成」を参照してください。
トピック
重要: Oracleでは、Log Analyticsコンソールで使用可能なデータ取込みワークフローを使用して、他のOCIサービスからログをすばやく取り込むことをお薦めします。Log Analyticsのホームまたはログ・エクスプローラに移動し、「コンパス」をクリックして、「データの追加」をクリックします。
- OCI監査ログおよびIDCS監査ログを除くOCIサービスからのすべてのタイプのログについて、「OCIリソースのモニター」セクションを展開し、「OCIリソースのログ収集の構成」をクリックします。
- OCI監査ログまたはIDCS監査ログの場合は、セクション「セキュリティおよびコンプライアンス」を展開し、選択したログをクリックします。このワークフローでは、ポリシー、ログ・グループ、サービス・コネクタなど、必要なすべてのリソースが自動的に作成されます。
ワーク・フローの直感的なステップに従って、ログの取込みを開始します。前提条件として、ステップを完了するために必要な権限があることを確認してください。ステップの簡単な説明は、Oracle Cloud Observability and Management Platformのビデオ: 他のOCIサービスからLog Analyticsにログをすばやく取り込む方法を参照してください。
または、次のステップを実行して、ログ収集を手動で設定することもできます。
追加情報
-
ログを収集するためのOracle定義ソースの一覧: Oracle Cloud Infrastructureサービスからログを収集するためのOracle定義ソースの一覧は、Oracle定義ソースを参照して、OCI..というタイトルのソースを検索します。
-
収集できるサービス・ログのタイプ: Oracle Cloud Infrastructureサービスから収集できるログのタイプ、パーサー、サンプルのログ・コンテンツ、フィールドおよびJSONパスは、OCIパーサーの詳細を参照してください。
-
サービス・コネクタを介して収集されたログのフィルタ: サービス・コネクタのOCIDは、フィールド
Log Origin
にマップされます。そのサービス・コネクタからOracle Log Analyticsに移行するログを表示するには、ログをフィールドLog Origin
でフィルタします。固定された属性およびフィールドによるログのフィルタを参照してください。
OCIロギング・サービスからのログの収集の許可
収集するサービス・ログのタイプに基づいて、Oracle Log Analyticsで、リソースに関する情報を取得し、各リソースのエンティティを作成できるようにするポリシーを作成する必要があります。
ポリシーを作成すると、作成されるエンティティは、そのリソースから収集されたすべてのログに自動的に関連付けられます。ポリシーを作成しない場合、ログは収集されますが、エンティティは作成されません。
次の権限は、サービス・コネクタからOracle Log 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 Log Analyticsのログ・グループのコンパートメントOCID。 -
Log_Group_OCID
: ログを格納する必要があるOracle Log Analyticsのログ・グループのOCID。 -
Service_Connector_Compartment_OCID
: サービス・コネクタ・ハブのコンパートメントOCID。
サービスに初めてナビゲートするときに使用可能なオンボーディングUIを使用してOracle Log Analyticsを有効にした場合、一部のポリシーがすでに作成されます。Log Analyticsのオンボーディング中に作成されたポリシーを参照してください。
各タイプのサービス・ログに対するポリシー
Oracle Log Analyticsは、サービス・コネクタを介して新しいログを受信したときに、基礎となるOCIリソースを表すエンティティを作成します。OCIリソースから必要な情報を取得するには、OCIリソースへのread
以上のアクセスをOracle Log Analyticsに提供する必要があります。たとえば、オブジェクト・ストレージ内のバケットに関する情報を読み取るには、次のいずれかのポリシーを記述できます:
OCIリソースのREAD PRIVILEGEを含むポリシー・ステートメント:
allow resource loganalyticsvrp LogAnalyticsVirtualResource to {BUCKET_READ} in compartment <specify_compartment>
または
OCI RESOURCEのread動詞を含むポリシー・ステートメント:
allow resource loganalyticsvrp LogAnalyticsVirtualResource to read buckets in compartment <specify_compartment>
前述のポリシー・ステートメントは、コンパートメントへのread
アクセスを制限します。テナンシ全体へのアクセスを拡張するには、それに応じてポリシー・ステートメントを変更できます。
Oracle Log 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ジョブ | 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-balancers |
LOAD_BALANCER_READ |
メディア・ワークフロー | media-workflow |
MEDIA_WORKFLOW_READ |
メディア・ワークフロー・ジョブ | media-workflow-job |
MEDIA_WORKFLOW_JOB_READ |
ネットワーク・ファイアウォール | network-firewall |
NETWORK_FIREWALL_READ |
オブジェクト・ストレージ(バケット) | buckets |
BUCKET_READ |
OCI Database with PostgreSQL | postgres-db-systems |
POSTGRES_DB_SYSTEM_READ |
OICインスタンス | integration-instance |
INTEGRATION_INSTANCE_READ |
オペレータ・コントロール | operator-control-family |
- |
サービス・コネクタ | serviceconnectors |
SERVICE_CONNECTOR_READ |
VCN - VNIC | vnics , vcns , subnets |
VNIC_READ , VCN_READ , SUBNET_READ |
Webアプリケーション・ファイアウォール | web-app-firewall |
WEB_APP_FIREWALL_READ |
サービスに初めてナビゲートするときに使用可能なオンボーディングUIを使用してOracle Log Analyticsを有効にした場合、一部のポリシーがすでに作成されます。Log Analyticsのオンボーディング中に作成されたポリシーを参照してください。
ログを収集するためのサービス・コネクタの設定
ログを収集するためのサービス・コネクタを設定する前に、収集するログのコンパートメントおよびログ・グループを識別してください。
次の例のステップでは、Oracle Cloud Infrastructure LoggingサービスからVCNサービス・ログを収集する方法を示します:
-
これは、Oracle Cloud Infrastructure Loggingサービスでログを有効にする方法を示す推奨ステップです。
Oracle Cloud Infrastructure Loggingサービスに移動し、「ログ」に移動します。
「リソース・ログの有効化」をクリックして、VCNサービス・ログを有効にします。ダイアログ・ボックスが開きます。
- リソース・コンパートメントを選択します。
- サービスを選択します。たとえば、
仮想クラウド・ネットワーク(サブネット)
。 - リソースを選択します。たとえば、VCNリソース。
- 「ログの構成」で、
フロー・ログ
などのログ・カテゴリとログ名を選択します。 - 「ログの場所」で、Oracle Log Analyticsでログを参照するコンパートメントとログ・グループを選択します。
「ログの有効化」をクリックします。
-
ログのソース・サービスおよびターゲットのOracle Log Analyticsを指定して、サービス・コネクタを設定します。これは、Oracle Cloud Infrastructureサービス・コネクタ・ハブと統合されているソース・サービス(Oracle Cloud Infrastructure Loggingサービスなど)から、または直接Oracle Cloud Infrastructureサービス・コネクタ・ハブから設定できます。
Oracle Cloud Infrastructure ロギング・サービスに移動し、「サービス・コネクタ」に移動して、「コネクタの作成」をクリックします。
または、Oracle Cloud Infrastructureサービス・コネクタ・ハブ・サービスに移動し、「サービス・コネクタの作成」をクリックします。
「サービス・コネクタの作成」ページが開きます。
- コネクタの名前を入力し、説明を指定します。
- コネクタ・リソースを作成する必要があるリソース・コンパートメントを選択します。
- 「サービス・コネクタの構成」で、
ロギング
をソース・サービスとして、ログ・アナリティクス
をターゲット・サービスとして指定します。 - 「ソース接続の構成」で、サービスから収集するログの詳細(VCNサービス・ログなど)を指定します。
コンパートメント名、ログが属しているログ・グループ、およびステップ1で構成したログの名前を選択します。
同じサービス・コネクタを構成して、より多くのログを収集できます。「別のログ」をクリックし、ステップ2-dを繰り返します。
オプションで、「タスクの構成」でフィルタを作成できます。
「コネクタの作成」をクリックします。
サービス・コネクタの作成後、選択したログがOracle Log Analyticsで使用できることを確認できます。
OCIロギング・サービスからのクロステナンシ・ログ収集の許可
ログを収集するOracle Cloud Infrastructure Loggingなどのソース・サービスのテナントをSource_Tenant
とします。サービス・コネクタを作成するテナントをTarget_Tenant
とします。サービス・コネクタは、ソース・サービスから収集されるログのターゲットとしてOracle Log Analyticsで構成されます。サービス・コネクタ・ハブとOracle Log 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
また、監査イベント・ログを読み取るには、次の権限が必要です。
admit group <Common_User_Group> of tenancy <Target_Tenant> to read audit-events in TENANCY
admit any-user of tenancy <Target_Tenant> to read audit-events IN tenancy WHERE ALL {request.principal.type = 'serviceconnector'}
ソース・サービスから収集する必要があるサービス・ログのタイプに対してポリシーを設定してください。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>
また、ソース監査イベント・ログを読み取るには、次の権限が必要です。
endorse group <Common_User_Group> to read audit-events in tenancy <Source_Tenant>
endorse any-user to read audit-events in tenancy <Source_Tenant> WHERE ALL {request.principal.type = 'serviceconnector'}
次の権限は、サービス・コネクタからOracle Log 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 Log Analyticsログ・グループのOCID。 -
Log_Group_Compartment_OCID
: Oracle Log Analyticsログ・グループが配置されているコンパートメントのOCID。 -
Service_Connector_Compartment_OCID
: サービス・コネクタのコンパートメントOCID。 -
Common_User_Group
: サービス・コネクタを作成するユーザー・グループ。
ソース・テナントとターゲット・テナント間のコネクタの作成
ソースおよびターゲット・テナントに必要なポリシーが作成されたら、CLIを使用してサービス・コネクタを作成します。次のCLIコマンドの例では、ソースとしてロギングを指定し、クロス・テナンシ・サービス・コネクタを作成するためのターゲットとしてOracle Log 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": "<LogAnalytics_LogGroup_OCID>" }'
上記のコマンドは、読みやすくするためにフォーマットされています。改行、タブ、および追加のスペースなどの文字を実行する前に削除します。
前述のCLIコマンドで、
-
Target_Profile
: ターゲット・テナンシにマップされる.oci/configファイル内のプロファイル。 -
Connector_Compartment_OCID
: サービス・コネクタ・リソースが作成されるコンパートメントのOCID。 -
Logging_LogGroup_Compartment_OCID
: Oracle Cloud Loggingログ・グループが属するコンパートメントのOCID。これはソース・テナントにあります。 -
Logging_LogGroup_OCID
: Oracle Cloud Loggingログ・グループのOCID。これはソース・テナントにあります。 -
LogAnalytics_LogGroup_OCID
: Oracle Log Analyticsログ・グループのOCID。これはターゲット・テナントにあります。
CLIコマンドの詳細は、CLIコマンド・リファレンス- 作成を参照してください。
サービス・コネクタの作成後、選択したログがOracle Log Analyticsで使用できることを確認できます。
サービス・コネクタからのログの収集の停止
OCI LoggingからOracle Log Analyticsにログを継続的に収集するようにサービス・コネクタを設定している場合は、コネクタを非アクティブ化するか削除することで、ログ収集を停止できます。
ログ収集を一時的に停止し、後でログ収集を再開できるようにコネクタ構成を保持する必要がある場合は、コネクタを非アクティブ化します。
サービス・コネクタからログ収集を完全に停止する場合は、コネクタを削除します。
-
ログ収集用に設定されているサービス・コネクタの識別: コネクタ・ハブ・サービスに移動し、コンパートメント内のコネクタをリストします。コネクタのリストを参照してください。
コネクタの名前をクリックして、コネクタの詳細および構成を表示します。ログ収集に設定されている適切なサービス・コネクタを特定します。
-
ログ収集の停止: 要件に応じて、「非アクティブ化」または「削除」をクリックします。コネクタの非アクティブ化およびコネクタの削除を参照してください。
これにより、特定のOCIサービスからOracle Log Analyticsへのデータ・フローが停止します。
コネクタを非アクティブ化し、ログ収集を再開する場合は、そのコネクタを再アクティブ化します。「コネクタのアクティブ化」を参照してください。