当社は、いくつかのWebサイト用にいくつかのサーバーを実行しています。サーバーはWindowsServer 2012を実行しており、データベースにはMS SQL Server2012があります。
今日、私は次の場所にあるログファイルをチェックしていました。
"C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Log"
そして私は「system_health」と呼ばれるイベントログでこの奇妙なことを見つけました:
security_error_ring_buffer_recorded
それをクリックすると、追加情報が得られました。
api_name ImpersonateSecurityContext
call_stack 0x6E2715B4FB0700007C36FBB3FB070000A553FBB3FB070000... <- this one continues forever
calling_api_name NLShimImpersonate
error_code 5023
id 0
session_id 51
time_stamp 190360
「エラー」と「録音」の部分がなければ、それほど気になりませんでした...それは良くないようです。
このイベントは毎日1時間ごとに発生し、その間に数分かかる場合もあれば、数秒で100回発生する場合もあります。
これらのログファイルを確認したのはこれが初めてです。
これが必要な場合でも、誰かがこれが何であるか、そしてそれを「修正」する方法を私に説明できますか?
編集:
このイベントに加えて、次のイベントもあります。
"scheduler_monitor_system_health_ring_buffer_recorded"
それをクリックすると、「page_faults」が8913であることが示されます。これもあまり良く聞こえません。
リングバッファとは何ですか?
リングバッファは、スレッド間またはプロセス間通信に使用される固定サイズのメモリです。基本的に、情報はリングバッファに書き込まれ、システムが最後に達すると、最初から再び書き込みを開始します。バッファの現在のヘッドを指す共有ポインタもあります。
その間、読み取りスレッドは、最初から読み取り、ライターに追いつくようにします。ライタープロセスがリーダーを追い抜くと、イベント/データは失われますが、少なくとも続行できます。
一般に、バッファのサイズは、悪いことが起こらない限りこれが起こらないようなものです。
リングバッファは、イベントの損失が致命的ではなく、他の形式のキュー管理に大きな問題がある状況で使用されます。
このイベントはどういう意味ですか?
これは、セキュリティエラーが書き込まれているリングバッファがあることを意味します。別のスレッドがリングバッファを読み取り、その情報をログファイルに記録しています。これが起こるはずです。
エラーではありません。これは、セキュリティエラー(ログインの失敗など)で何が行われているかを示す詳細なログ記録であり、それらが失われないようにします。