Microsoft SQL Server データベースのログファイル - Amazon Relational Database Service

Microsoft SQL Server データベースのログファイル

Amazon RDS コンソール、AWS CLI、または RDS API を使用して、Microsoft SQL Server のエラーログ、エージェントログ、トレースファイル、ダンプファイルにアクセスできます。ファイルベースのデータベースログの表示、ダウンロード、監視の詳細については、「Amazon RDS データベースログファイル」を参照してください。

保持期間スケジュール

ログファイルは、毎日、および DB インスタンスが再開されるたびにローテーションされます。以下は、Amazon RDS の Microsoft SQL Server ログの保持期間スケジュールです。

ログのタイプ 保持期間スケジュール

エラーログ

最大 30 のエラーログが保持されます。Amazon RDS は 7 日を経過したエラーログを削除する場合があります。

エージェントログ

最大 10 のエージェントログが保持されます。Amazon RDS は 7 日を経過したエージェントログを削除する場合があります。

トレースファイル

トレースファイルは、DB インスタンスのトレースファイル保持期間に応じて保持されます。トレースファイルのデフォルトの保持期間は 7 日です。DB インスタンスのトレースファイル保持期間を変更するには、トレースファイルおよびダンプファイルの保持期間を設定する を参照してください。

ダンプファイル

ダンプファイルは、DB インスタンスのダンプファイル保持期間に応じて保持されます。ダンプファイルのデフォルトの保持期間は 7 日です。DB インスタンスのダンプファイル保持期間を変更するには、トレースファイルおよびダンプファイルの保持期間を設定する を参照してください。

rds_read_error_log プロシージャを使用して SQL Server を表示する

エラーログおよびエージェントログを表示するには、Amazon RDS ストアドプロシージャ rds_read_error_log を使用できます。詳細については、「エラーログとエージェントログの表示」を参照してください。

SQL Server ログの Amazon CloudWatch Logs への発行

Amazon RDS for SQL Server ではエラーおよびエージェントログを直接 Amazon CloudWatch Logs に発行できます。CloudWatch Logs を使用してログデータを分析し、CloudWatch を使用してアラームを作成し、メトリクスを表示することができます。

CloudWatch Logs では、次のことを実行できます。

  • ログは、ユーザーが定義する保持期間で高い耐久性のあるストレージ領域に保存します。

  • ログデータを検索しフィルタリングします。

  • アカウント間でログデータを共有します。

  • ログをAmazon S3 にエクスポートします。

  • Amazon Elasticsearch Service へのデータのストリーミング

  • Amazon Kinesis Data Streams を使用してログデータをリアルタイムで処理します。

Amazon RDS は、各 SQL Server データベースログを、ロググループの別個のデータストリームとして発行します。たとえば、エラーログを発行する場合、エラーデータは /aws/rds/instance/my_instance/error ロググループのエラーログストリームに保存されます。

注記

SQL Server ログの CloudWatch Logs への発行はデフォルトでは有効にされていません。トレースファイルおよびダンプファイルの発行はサポートされていません。SQL Server ログの CloudWatch Logs への発行は、アジアパシフィック (香港) を除くすべてのリージョンでサポートされています。

AWS マネジメントコンソール から CloudWatch Logs に SQL Server DB ログを発行するには

  1. https://console.aws.amazon.com/rds/ にある Amazon RDS コンソールを開きます。

  2. ナビゲーションペインで、[データベース] を選択し、変更する DB インスタンスを選択します。

  3. [Modify] を選択します。

  4. [ログのエクスポート] セクションで、CloudWatch Logs に公開するログを選択します。

    [エラー]、[エージェント]、または両方を選択できます。

  5. [続行] を選択し、概要ページで [Modify DB Instance] (DB インスタンスの変更) を選択します。

Oracle ログを発行するには、以下のパラメータを指定して modify-db-instance コマンドを使用します。

  • --db-instance-identifier

  • --cloudwatch-logs-export-configuration

注記

--cloudwatch-logs-export-configuration オプションへの変更は常に DB インスタンスに即時適用されます。それで、--apply-immediately--no-apply-immediately オプションは効果がありません。

以下のコマンドを使用して SQL Server ログを発行することもできます。

次の例では、CloudWatch Logs の発行を有効にした SQL Server DB インスタンスを作成します。--enable-cloudwatch-logs-exports 値は、erroragent、または両方を含むことができる JSON 文字列です。

Linux、macOS、Unix の場合:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --enable-cloudwatch-logs-exports '["error","agent"]' \ --db-instance-class db.m4.large \ --engine sqlserver-se

Windows の場合:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --enable-cloudwatch-logs-exports "[\"error\",\"agent\"]" ^ --db-instance-class db.m4.large ^ --engine sqlserver-se
注記

Windows コマンドプロンプトを使用する場合、JSON コードでは、二重引用符 (") の前にバックスラッシュ (\) を付けてエスケープする必要があります。

次の例では、ログファイルが CloudWatch Logs に発行されるよう既存の SQL Server DB インスタンスを変更します。--cloudwatch-logs-export-configuration 値は JSON オブジェクトです。このオブジェクトのキーは EnableLogTypes であり、その値は erroragent、または両方を含む文字列の配列です。

Linux、macOS、Unix の場合:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","agent"]}'

Windows の場合:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration "{\"EnableLogTypes\":[\"error\",\"agent\"]}"
注記

Windows コマンドプロンプトを使用する場合、JSON コードでは、二重引用符 (") の前にバックスラッシュ (\) を付けてエスケープする必要があります。

次の例では、既存の SQL Server DB インスタンスを変更して、ログファイルを CloudWatch Logs に発行できないようにします。--cloudwatch-logs-export-configuration 値は JSON オブジェクトです。このオブジェクトのキーは DisableLogTypes であり、その値は erroragent、または両方を含む文字列の配列です。

Linux、macOS、Unix の場合:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"DisableLogTypes":["agent"]}'

Windows の場合:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration "{\"DisableLogTypes\":[\"agent\"]}"
注記

Windows コマンドプロンプトを使用する場合、JSON コードでは、二重引用符 (") の前にバックスラッシュ (\) を付けてエスケープする必要があります。