Назад | Перейти на главную страницу

security_error_ring_buffer_recorded в журнале работоспособности системы - что это значит?

Наша компания управляет несколькими серверами для пары сайтов. Сервер работает под управлением Windows Server 2012, а для баз данных у нас есть MS SQL Server 2012.

Сегодня я проверял файлы журналов, расположенные в:

"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

Меня бы это не беспокоило, если бы не «ошибка» и «записанная» часть ... это звучит не очень хорошо.

Это событие происходит каждый час каждый день, иногда с перерывами в несколько минут, а в других случаях оно происходит сотни раз за несколько секунд.

Я впервые проверил эти лог-файлы.

Может кто-нибудь объяснить мне, что это такое и как "исправить", если это вообще необходимо?

РЕДАКТИРОВАТЬ:

Наряду с этим событием есть еще одно:

"scheduler_monitor_system_health_ring_buffer_recorded"

Щелчок по нему показывает, что "page_faults" равняется 8913. Это тоже звучит не очень хорошо.

Что такое кольцевой буфер?

Кольцевой буфер - это фиксированный размер памяти, который используется для межпоточного или межпроцессного взаимодействия. По сути, информация записывается в кольцевой буфер, и когда система достигает конца, она снова начинает запись с начала. Также существует общий указатель, который указывает на текущий заголовок буфера.

Тем временем поток чтения читает с самого начала и пытается не отставать от писателя. Если процесс записи обгонит читателя, события / данные будут потеряны, но, по крайней мере, вы можете продолжить.

Обычно размер буфера таков, что этого не произойдет, если только не произойдет плохое.

Кольцевые буферы используются в ситуациях, когда проигрыш событий не фатален, а другие формы управления очередью имеют более серьезные проблемы.

Что тогда означает это событие?

Это означает, что существует кольцевой буфер, в который записываются ошибки безопасности. Другой поток читает кольцевой буфер и записывает информацию в файл журнала. Что и должно было случиться.

Это не ошибка. Это подробный журнал, в котором рассказывается, что он делает с ошибками безопасности (например, неудачный вход в систему), чтобы убедиться, что они не потеряны.