説明
- V4.3.x系では、この構成パラメータはV4.3.3バージョンから導入されました。
- V4.2.x系では、この構成パラメータはV4.2.4バージョンから導入されました。
機能の概要
audit_log_pathは監査ログの出力ディレクトリを設定します。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity Editionは現在監査機能をサポートしていません。
権限要件
パラメータの確認
sysテナントとすべてのユーザーテナントはSHOW PARAMETERSステートメント、またはGV$OB_PARAMETERSビューを使用してこのパラメータを確認できます。パラメータの変更
sysテナントとユーザーテナントはALTER SYSTEM SETステートメントを使用してこの構成パラメータを変更できます。
プロパティの説明
| プロパティ | 説明 |
|---|---|
| パラメータタイプ | String |
| デフォルト値 | ""、デフォルトは空文字列であり、デフォルトのパス ${WORK_DIR}/audit を使用することを意味します。 |
| 値の範囲 |
|
| 変更は可能か | はい。ALTER SYSTEM SET ステートメントを使用して変更できます。 |
| OBServerノードの再起動が必要か | 不要です。設定は即時に反映されます。 |
使用方法
ローカルストレージシナリオ
同一テナント内では、異なるOBServerの監査ログが異なるディレクトリに出力されます。同一クラスタ内で、ユーザーが異なるテナントの出力パスを同一に設定した場合、ディレクトリ構造に
tenant_idという階層が追加されます。ローカル出力ディレクトリ構造は以下の図のとおりです:- ${audit_log_path} - tenant_id_1 - ip1:port1 - audit.log.20231031080646317[.zst] - audit.log.20231031084835263[.zst] - audit.log - ip2:port2 - audit.log.20231031072457838[.zst] - audit.log.20231031093023607[.zst] - audit.log.20231031101213751[.zst] - audit.log - tenant_id_2クラウドストレージシナリオ
OceanBaseデータベースは、複数のOBServerから同一の
oss/nfsディレクトリに出力するシナリオをサポートしています。同時実行の追加書き込み性能およびその後の圧縮・暗号化機能はすべてローカルファイルを操作する必要があるため、アーカイブ済みのファイルのみがクラウドストレージに保存され、追加書き込みはローカルのauditディレクトリ下のファイルに行われます。クラウドストレージ内の監査ログを下流で消費する際、最新の一部のレコードはOBServerのローカルにのみ存在し、下流には可視されません。
設定例
監査ログの出力ディレクトリを
file:///logs/auditに設定します。obclient> ALTER SYSTEM SET audit_log_path='file:///logs/audit';監査ログの出力ディレクトリを
oss://ob-audit/audit/?host=$OSS_HOST&access_id=$OSS_ACCESS_ID&access_key=$OSS_ACCESS_KEYに設定します。obclient> ALTER SYSTEM SET audit_log_path = 'oss://ob-audit/audit/?host=$OSS_HOST&access_id=$OSS_ACCESS_ID&access_key=$OSS_ACCESS_KEY';