データベース・インスタンス・モニタリングの設定
Oracle Logging Analyticsは、ログ・ソース構成で指定したSQL問合せに基づいてデータベース・インスタンス・レコードを抽出できます。
データベース・ログ収集の全体的なフロー
次に、データベースに格納されているログ情報を収集するためのタスクの概要を示します:
-
データベース・インスタンスへの管理エージェントのインストール。ホストからの継続的なログ収集の設定を参照してください。
-
データベース・エンティティとソースの関連付け。新しいソースとエンティティのアソシエーションの構成を参照してください。
Oracle Database
Oracle Databaseの
- プラガブル・データベース(PDB)、マルチテナント・コンテナ・データベース(CDB)、およびアプリケーション・コンテナ
- Oracle Database Instance
- Oracle Autonomous Database
- Autonomous Data Warehouse (ADW)
- Autonomous Transaction Processing (ATP)
Oracle Autonomous Databaseの表またはビューからログを収集する方法の例は、『Oracle Autonomous Databaseの表またはビューからのログの収集』( チュートリアル)を参照してください。
Oracle Logging Analyticsには、Oracle Database用の「データベース」タイプのOracle定義ログ・ソースの大規模なセットが用意されています:
ログ・ソース | エンティティ・タイプ |
---|---|
Oracle DatabaseのAVDFアラート |
Oracle Databaseインスタンス |
Oracle DatabaseのAVDFイベント |
Oracle Databaseインスタンス |
Identity and Access Management監査データベース |
Oracle Databaseインスタンス |
データベースに格納されたOracle DB監査ログ・ソース |
Oracle Databaseインスタンス |
Oracle EBSトランザクション・ログ |
Oracleプラガブル・データベース、Oracle Database Instance |
Symantec DLPシステム・イベント |
Oracle Databaseインスタンス |
データベース12.1に格納されたOracle統合DB監査ログ・ソース |
Oracleプラガブル・データベース、Oracle Database Instance |
データベース12.2に格納されたOracle統合DB監査ログ・ソース |
Oracleプラガブル・データベース、 Autonomous Data Warehouse、 Oracle Database Instance、 Autonomous Transaction Processing |
データベースに格納されたデータベース・アラート・ログ |
Autonomous Data Warehouse、Oracle Pluggable Database、Autonomous Transaction Processing、Oracle Database Instance |
データベースに格納されたデータベース・トレース・ログ |
Autonomous Data Warehouse、Oracle Database Instance、Oracle Pluggable Database、Autonomous Transaction Processing |
Oracle Database Health Monitorサービス・ログ |
Oracle Database Instance、Autonomous Transaction Processing |
Oracle Databaseデータガード・ログ |
Oracle Database Instance、Autonomous Transaction Processing |
Additionally, more oracle-defined log sources of the type File are available for Oracle Database such as Database Alert Logs, Database Audit Logs, Database Audit XML Logs, Database Incident Dump Files, Database Listener Alert Logs, Database Listener Trace Logs, Database Trace Logs, and Database XML Alert Logs.
Microsoft SQL Serverデータベース・インスタンス
- Microsoft SQL Serverデータベース・ソースからログを正常に収集するには、管理エージェントのバージョンが210403.1350以降であることを確認してください。
- Microsoft SQL Serverデータベース・インスタンスのモニタリングは、スタンドアロン管理エージェントのインストールでのみサポートされます。Oracle Cloud Agentの管理エージェント・プラグインではサポートされていません。
「データベース」タイプのOracle定義ログ・ソースは、Microsoft SQL Serverデータベース・インスタンスのモニタリングに使用できます:
- McAfeeデータ損失防止エンドポイント
- McAfee ePolicyオーケストレータ
また、「ファイル」タイプの、より多くのoracle定義ログ・ソースをMicrosoft SQL Serverデータベース・インスタンス(Microsoft SQL Serverエージェントのエラー・ログおよびMicrosoft SQL Serverエラー・ログ・ソースなど)で使用できます。
MySQL Databaseインスタンス
- MySQL Databaseソースからログを正常に収集するには、管理エージェントのバージョンが210205.0202以降であることを確認してください。
- MySQL Databaseインスタンスのモニタリングは、スタンドアロン管理エージェントのインストールでのみサポートされます。Oracle Cloud Agentの管理エージェント・プラグインではサポートされていません。
「データベース」タイプのOracle定義ログ・ソースは、MySQL Databaseインスタンスのモニタリングに使用できます:
- MySQLデータベースに格納されるエラー・ログ
- データベースに格納されたMySQL一般ログ・ソース
- MySQLデータベースに格納された低速問合せログ
さらに、「ファイル」タイプのoracle定義ログ・ソースが「MySQL Database Audit XML Logs」、MySQL Error Logs、MySQL General Query Logs、MySQL Slow Query LogsなどのMySQL Databaseインスタンスで使用可能です。
MySQLデータベース・インスタンスでリモート収集を実行するには、データベース・インスタンスで次の構成を実行する必要があります:
-
管理エージェントがインストールされている特定のホストからのアクセスを許可するには:
-
指定したパスワードで認証される新しいアカウントを作成します:
CREATE USER '<mysql_user>'@'<host_name>' IDENTIFIED BY '<password>';
-
ホスト
host_name
上のmysql_user
ユーザーに、すべてのデータベースに対する読取り権限を割り当てます:GRANT SELECT ON *.* TO '<mysql_user>'@'<host_name>' WITH GRANT OPTION;
-
コマンドを発行して、ユーザー権限の更新を保存します:
FLUSH PRIVILEGES;
-
-
任意のホストからの特定のデータベースに対するアクセスを許可するには:
-
任意の有効なホストの
mysql_user
に読取り権限を付与します:GRANT SELECT ON <database_name>.* TO '<mysql_user>'@'%' WITH GRANT OPTION;
-
コマンドを発行して、ユーザー権限の更新を保存します:
FLUSH PRIVILEGES;
-
データベース・エンティティの作成
データベース・エンティティを作成し、データベース・インスタンスを参照してそこからのログ収集を有効にします。管理エージェントを使用してログを収集する場合は、管理エージェントのインストール後にここに戻り、エンティティのエージェント・モニタリングを構成する必要があります。
-
ナビゲーション・メニューを開き、「監視および管理」をクリックします。「ログ・アナリティクス」で、「管理」をクリックします。「管理の概要」ページが開きます。
-
管理リソースが、左側のナビゲーション・ペインの「リソース」の下にリストされます。「エンティティ」をクリックします。
-
左側のコンパートメント・セレクタが、この新しいエンティティの目的のコンパートメントを示していることを確認します。
「作成」をクリックします。
-
データベース・インスタンスに適したエンティティ・タイプを選択します(Oracle Databaseインスタンスなど)。
エンティティの名前を指定します。
-
エージェントがインストールされている管理エージェント・コンパートメントを選択し、ログを収集できるようにデータベース・エンティティに関連付ける管理エージェントを選択します。
または、最初にエンティティを作成し、後で編集して、管理エージェントのインストール後にそのエージェントのOCIDを指定できます。
ノート
-
MySQL DatabaseインスタンスおよびMicrosoft SQL Serverデータベースのモニタリングは、スタンドアロンの管理エージェントのインストールでのみサポートされます。Oracle Cloud Agentの管理エージェント・プラグインではサポートされていません。
-
管理エージェントのバージョン210403.1350または以降を使用して、Microsoft SQL Serverデータベースを確実にサポートしてください。
-
MySQL Databaseインスタンス・ソースからログを正常に収集するには、管理エージェントのバージョンが210205.0202以降であることを確認してください。
-
-
データベース・インスタンスにクラウド・リソースIDがある場合は、そのOCIDを指定します。OCIDが指定され、データベースがデータベース管理に対して有効になっている場合は、ログ・エクスプローラで使用可能なオプションを使用してデータベース管理で表示できます。データベース管理サービスのデータベース・エンティティの表示を参照してください。
-
SQLを収集するには、Oracle DatabaseインスタンスまたはOracleプラガブル・データベースの場合に次のプロパティを指定します:
port
hostname
sid
またはservice_name
両方の値を指定すると、ログ・アナリティクスでは、
service_name
がSQLの収集に使用されます。
Microsoft SQL Serverデータベース・インスタンスおよびMySQLデータベース・ソースからのログ収集の場合、次のプロパティを指定します:
database_name
host_name
port
Oracle定義のログ・ソースを使用して管理エージェントからログを収集する場合は、選択したエンティティ・タイプにすでに定義されているパラメータ値を指定することをお薦めします。パラメータ値を指定しない場合、ソースをこのエンティティに関連付けようとすると、パラメータ値の欠落が原因で失敗します。
「保存」をクリックします。
データベース・ソースの作成
-
ナビゲーション・メニューを開き、「監視および管理」をクリックします。「ログ・アナリティクス」で、「管理」をクリックします。「管理の概要」ページが開きます。
-
管理リソースが、左側のナビゲーション・ペインの「リソース」の下にリストされます。「ソース」をクリックします。
-
「ソース」ページで、「ソースの作成」をクリックします。
「ソースの作成」ダイアログ・ボックスが表示されます。
-
「ソース」フィールドに、ソースの名前を入力します。
-
「ソース・タイプ」リストから、「データベース」を選択します。
-
「エンティティ・タイプ」をクリックして、必要なエンティティ・タイプを選択します。たとえば、Oracle Databaseインスタンス、Oracleプラガブル・データベース、Microsoft SQL Serverデータベース・インスタンスまたはMySQLデータベース・インスタンス。
-
「データベース問合せ」タブで「追加」をクリックし、Oracle Logging Analyticsインスタンスがデータベース・インスタンス・ログを収集する基準となるSQL問合せの詳細を指定します。
SQL問合せのガイドラインを参照してください。
-
「構成」をクリックして、「列マッピングの構成」ダイアログ・ボックスを表示します。
-
「列マッピングの構成」ダイアログ・ボックスで、SQLフィールドを、実際のログ・レコードに表示されるフィールド名にマップします。マッピング用の新しいフィールドを作成するには、アイコンをクリックします。
順序列を指定します。このフィールドの値によって、表に挿入されるレコードの順序が決まります。これには一意の増分値が必要です。フィールドでレコードの順序を決定しない場合は、「SQL問合せ収集時間」を選択して、収集時間をログ・エントリ時間として使用できます。その場合、すべてのログ・レコードが収集サイクルごとに再収集されます。
ノート
データ型が
Timestamp
の最初のマップ済フィールドは、ログ・レコードのタイムスタンプとして使用されます。そのようなフィールドが存在しない場合、ログ・レコードの時間として収集時間が使用されます。ログ・ソースの作成後に初めてログが収集される場合(履歴ログ収集):
-
SQL問合せのフィールドが
Time
フィールドにマップされている場合、そのフィールドの値は、過去30日間のログ・レコードをアップロードするための参照として使用されます。 -
SQL問合せのどのフィールドも
Time
フィールドにマップされていない場合、最大10,000,000レコードがアップロードされます。
「完了」をクリックします。
-
-
複数のSQL問合せを追加するには、ステップ6からステップ8までを繰り返します。
-
各SQL問合せの「有効」を選択し、「保存」をクリックします。
データベース・エンティティ資格証明の提供
-
管理エージェントがインストールされているホストにログインします。
-
DBCreds
タイプの資格証明JSON入力ファイルを作成します。たとえば、agent_dbcreds.json
:cat agent_dbcreds.json { "source": "lacollector.la_database_sql", "name": "LCAgentDBCreds.<entity_name>", "type": "DBCreds", "usage": "LOGANALYTICS", "disabled": "false", "properties": [ { "name": "DBUserName", "value": "CLEAR[username]" }, { "name": "DBPassword", "value": "CLEAR[password]" }, { "name": "DBRole", "value": "CLEAR[normal]" } ] }
前述の例の
agent_dbcreds.json
のように、入力ファイルに次のプロパティを指定する必要があります:- source: "lacollector.la_database_sql"
- name: "LCAgentDBCreds.<entity_name>"
entity_name
は、エンティティの作成時に入力した「名前」フィールドの値です。 - type: "DBCreds"
- usage: "LOGANALYTICS"
- properties: ユーザー名、パスワードおよびロール。ロールはオプションです。
-
upsertCredentials
操作とともにcredential_mgmt.sh
スクリプトを使用して、エージェントの資格証明ストアに資格証明を追加します:構文:
$cat <input_file> | sudo -u mgmt_agent /opt/oracle/mgmt_agent/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s <service_name>
前述のコマンドで:
- 入力ファイル: 資格証明パラメータを含む入力JSONファイル(
agent_dbcreds.json
など)。 - サービス名: エージェントにデプロイされたOracle Logging Analyticsプラグインの名前として
logan
を使用します。
2つのパラメータの例の値を使用すると、コマンドは次のようになります:
$cat agent_dbcreds.json | sudo -u mgmt_agent /opt/oracle/mgmt_agent/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s logan
資格証明が正常に追加されたら、入力JSONファイルを削除できます。
管理エージェント資格証明ストアでの資格証明の管理の詳細は、管理エージェント・ドキュメントの管理エージェントのソース資格証明を参照してください。
- 入力ファイル: 資格証明パラメータを含む入力JSONファイル(
データベース管理サービスでのデータベース・エンティティの表示
データベースがデータベース管理に対して有効になっており、クラウド・リソースOCIDが関連付けられている場合、ログ・アナリティクスでは、ログ・エクスプローラで使用可能なオプションを使用してデータベース管理で表示できます。
データベースのデータベース管理を有効にするには、OCIドキュメント: データベース管理の有効化を参照してください。
-
ナビゲーション・メニューを開き、「監視および管理」をクリックします。「Logging Analytics」で、「Log Explorer」をクリックします。
-
オプションで、データベース・タイプのいずれかである必要があるエンティティ・タイプ別にログの検索を絞り込みます。「フィールド」パネルの「固定」セクションで、「エンティティ・タイプ」をクリックします。「エンティティ・タイプ」ダイアログ・ボックスで、必要なエンティティ・タイプ(
Oracle Database Instance
など)を選択し、「適用」をクリックします。 -
「ビジュアル化」パネルから、レコード表を表示するビジュアライゼーション・オプション(ヒストグラム付きレコードなど)のいずれかを選択します。
その後、ログはヒストグラム付きのレコード・ビジュアライゼーションに表示されます。レコード表の各ログ・レコードの下に、エンティティ名、ログ・ソースおよびエンティティ・タイプに関する情報が表示されます。
-
エンティティの名前をクリックします。メニューから、「データベース管理で表示」をクリックします。
データベースのコンテキストにデータベース管理サービス・コンソールが表示された新しいタブが表示されます。