翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
データベースログ
MySQL および MariaDB データベースは、監査やトラブルシューティングに使用できるログを生成します。それらのログは以下のとおりです。
-
監査
— オーディットトレイルは、サーバーのアクティビティを記録するレコードのセットです。クライアントセッションごとに、サーバーに接続したユーザー (ユーザー名とホスト)、実行されたクエリ、アクセスされたテーブル、および変更されたサーバー変数を記録します。 -
エラー
— このログにはサーバの ( mysqld
) 起動時間とシャットダウン時間、およびサーバーの起動時とシャットダウン時、およびサーバーの実行中に発生するエラー、警告、メモなどの診断メッセージ。 -
全般
— このログには、次のアクティビティが記録されます mysqld
これには、各クライアントの接続アクティビティと切断アクティビティ、およびクライアントから受信した SQL クエリが含まれます。一般的なクエリログは、エラーが疑われ、クライアントの送信先を正確に知りたい場合に非常に役立ちます。mysqld
。 -
スロークエリ
— このログには、実行に時間がかかった SQL クエリの記録が記録されます。
ベストプラクティスとして、Amazon RDS からアマゾンにデータベースログをパブリッシュCloudWatchログ。とCloudWatchログでは、ログデータをリアルタイムで分析し、耐久性の高いストレージにデータを保存し、次の方法でデータを管理できます。CloudWatchログエージェント。できますデータベースログにアクセスして監視するAmazon RDS コンソールから。使用することもできますCloudWatchLogs Insightsでログデータをインタラクティブに検索、分析できますCloudWatchログ。次の例は、何回かを確認する監査ログのクエリを示しています。CONNECT
イベント、接続者、接続元のクライアント (IP アドレス) がログに表示されます。監査ログからの抜粋は次のようになります。
20221201 14:07:05,ip-10-22-1-51,rdsadmin,localhost,821,0,CONNECT,,,0,SOCKET 20221201 14:07:05,ip-10-22-1-51,rdsadmin,localhost,821,0,DISCONNECT,,,0,SOCKET 20221201 14:12:20,ip-10-22-1-51,rdsadmin,localhost,822,0,CONNECT,,,0,SOCKET 20221201 14:12:20,ip-10-22-1-51,rdsadmin,localhost,822,0,DISCONNECT,,,0,SOCKET 20221201 14:17:35,ip-10-22-1-51,rdsadmin,localhost,823,0,CONNECT,,,0,SOCKET 20221201 14:17:35,ip-10-22-1-51,rdsadmin,localhost,823,0,DISCONNECT,,,0,SOCKET 20221201 14:22:50,ip-10-22-1-51,rdsadmin,localhost,824,0,CONNECT,,,0,SOCKET 20221201 14:22:50,ip-10-22-1-51,rdsadmin,localhost,824,0,DISCONNECT,,,0,SOCKET
ログインサイトクエリの例では、次のことがわかります。rdsadmin
からデータベースに接続localhost
次の図に示すように、5 分おきに、合計 22 回です。これらの結果は、アクティビティがモニタリングシステム自体などの内部の Amazon RDS プロセスから発生したことを示しています。
ログイベントには、MySQL や MariaDB DB インスタンスに関連する操作に関する警告やエラーなど、カウントしたい重要なメッセージが含まれることがよくあります。たとえば、操作が失敗した場合、エラーが発生し、次のようにエラーログファイルに記録されます。ERROR 1114 (HY000): The table zip_codes is full
。これらのエントリを監視して、エラーの傾向を把握したい場合があります。できますカスタム作成CloudWatchフィルターを使用した Amazon RDS ログのメトリックスAmazon RDS データベースログの自動モニタリングを可能にし、特定のログで特定のパターンを監視し、予想される動作に違反した場合にアラームを生成できるようにします。例えば、ロググループのメトリックスフィルタを作成/aws/rds/instance/database-1/error
エラーログを監視して検索します特定のパターン、などERROR
。を設定フィルターパターンにERROR
そしてメトリック値に1
。フィルターは、そのキーワードを含むすべてのログレコードを検出します。ERROR
そして、「ERROR」を含むログイベントごとにカウントが 1 ずつ増えます。フィルターを作成したら、MySQL または MariaDB のエラーログでエラーが検出された場合に通知するアラームを設定できます。
スロークエリログとエラーログの監視について詳しくは、CloudWatchダッシュボードと使用CloudWatchログインサイト (ブログ記事を参照)アマゾンの作成CloudWatchAmazon RDS と Amazon Aurora MySQL をモニタリングするためのダッシュボード。