サービス・コネクタを使用した他のOCIサービスからのログの収集
Oracle Logging Analyticsにログを収集して、そのログを分析し、問題のトラブルシューティング、ヘルスとパフォーマンスのモニター、およびOracle Cloud Infrastructureサービスでの運用タスクの監視を行うことができます。
サービス・コネクタを使用して、Oracle Cloud Infrastructureサービスをログのソースとして、Oracle Logging Analyticsを宛先として識別します。サービス・コネクタ・ハブの動作の詳細は、Oracle Cloud Infrastructureドキュメントのサービス・コネクタ・ハブの概要を参照してください。
サービス・コネクタの作成後、ログを処理するためのエンティティが自動的に作成されます。適切なログ収集を保証するため、エンティティは削除しないでください。
Oracle Operator Access Control Logsの場合、エンティティは自動的に作成されません。エンティティを作成するには、ログ出力リソースを表すエンティティの作成を参照してください。
トピック
重要: 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 |
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 |
NETWORK_FIREWALL_READ |
オブジェクト・ストレージ(バケット) | buckets |
BUCKET_READ |
OICインスタンス | integration-instance |
INTEGRATION_INSTANCE_READ |
オペレータ・コントロール | operator-control-family |
- |
サービス・コネクタ | serviceconnectors |
SERVICE_CONNECTOR_READ |
VCN - VNIC | vnics |
VNIC_READ |
Web Application Firewall | web-app-firewall |
WEB_APP_FIREWALL_READ |
サービスに初めてナビゲートするときに使用できるオンボーディングUIを使用してOracle Logging Analyticsを有効にした場合、一部のポリシーがすでに作成されます。ログ・アナリティクスのオンボーディング中に作成されるポリシーを参照してください。
ログを収集するためのサービス・コネクタの設定
ログを収集するためのサービス・コネクタを設定する前に、収集するログのコンパートメントおよびログ・グループを識別してください。
次の例のステップでは、Oracle Cloud Infrastructure LoggingサービスからVCNサービス・ログを収集する方法を示します:
-
これは、Oracle Cloud Infrastructure Loggingサービスでログを有効にする方法を示す推奨ステップです。
Oracle Cloud Infrastructure Loggingサービスに移動し、「ログ」に移動します。
「リソース・ログの有効化」をクリックして、VCNサービス・ログを有効にします。ダイアログ・ボックスが開きます。
- リソース・コンパートメントを選択します。
- サービスを選択します。たとえば、
仮想クラウド・ネットワーク(サブネット)
。 - リソースを選択します。たとえば、VCNリソース。
- 「ログの構成」で、
フロー・ログ
などのログ・カテゴリとログ名を選択します。 - 「ログの場所」で、Oracle Logging Analyticsがログを参照するコンパートメントとログ・グループを選択します。
「ログの有効化」をクリックします。
-
ログのソース・サービスおよびターゲットのOracle Logging Analyticsを指定して、サービス・コネクタを設定します。これは、Oracle Cloud Infrastructureサービス・コネクタ・ハブと統合されているソース・サービス(Oracle Cloud Infrastructure Loggingサービスなど)から、または直接Oracle Cloud Infrastructureサービス・コネクタ・ハブから設定できます。
Oracle Cloud Infrastructure Loggingサービスに移動し、「サービス・コネクタ」に移動して、「コネクタの作成」をクリックします。
または、Oracle Cloud Infrastructureサービス・コネクタ・ハブ・サービスに移動し、「サービス・コネクタの作成」をクリックします。
「サービス・コネクタの作成」ページが開きます。
- コネクタの名前を入力し、説明を指定します。
- コネクタ・リソースを作成する必要があるリソース・コンパートメントを選択します。
- 「サービス・コネクタの構成」で、
ロギング
をソース・サービスとして、ログ・アナリティクス
をターゲット・サービスとして指定します。 - 「ソース接続の構成」で、サービスから収集するログの詳細(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 Loggingログ・グループが属するコンパートメントのOCID。これはソース・テナントにあります。 -
Logging_LogGroup_OCID
: Oracle Cloud Loggingログ・グループのOCID。これはソース・テナントにあります。 -
LoggingAnalytics_LogGroup_OCID
: Oracle Logging Analyticsログ・グループのOCID。これはターゲット・テナントにあります。
CLIコマンドの詳細は、CLIコマンド・リファレンス- 作成を参照してください。
サービス・コネクタの作成後、選択したログがOracle Logging Analyticsで使用できることを確認できます。