Background Task: Log Writer

Log writer é um processo dedicado que auxilia na escrita de log para todos os bancos de dados. Apesar de ser único no servidor, ele realiza escrita em todos os arquivos de Transaction Log.

Dentro do SQL Server, o log writer corresponde a uma task de sistema que roda continuamente desde o startup da instância.

 SELECT * FROM sys.dm_exec_requests 
WHERE command ='LOG WRITER'

 image

 

Em um sistema com baixa atividade de escrita, é normal observar a tarefa em modo de “espera” por trabalho:

 SELECT * FROM sys.dm_os_waiting_tasks
WHERE session_id = 4

image

A coluna wait_duration_ms mostra o tempo de inatividade do log writer. No exemplo acima, não houve escrita em log nos últimos 68 segundos (wait_duration_ms = 68726). Ao realizar uma transação, o log writer é “acordado” para escrever no Transaction Log.