Cliente Windows Sensu - erros ocasionais de "Acesso negado" ao executar arquivos em lote

3

Temos o cliente Windows Sensu em execução em vários sistemas 2008 R2. Uma de nossas verificações chama um arquivo em lote para coletar algumas informações e reportar novamente. Estamos recebendo esporadicamente "Desconhecido: Erro inesperado: acesso negado (5)" mensagens para essas verificações - sem freqüência padrão, sem correlação ... a próxima verificação é executada corretamente sem problemas.

Eu rastreei a chamada através da pilha e do código Sensu Ruby ) gera o processo filho de parâmetros 'cmd.exe / c "/path/to/batch.bat"' sem problemas. Eu posso recriar o problema removendo todo o acesso NTFS ao próprio arquivo de lote. Se você executar cmd / c batch.bat com essas permissões removidas, ele retornará com o mesmo erro "Acesso negado (5)".

Ok, ótimo, está tendo problemas para acessar o arquivo. Por quê? Eu executei rastreios do monitor de processo e não consigo encontrar absolutamente nada de errado com o processo: o ruby é carregado, o cmd.exe é chamado, o cmd.exe lê o arquivo sem erros visíveis e retorna a verificação, pois o Access é negado. O que...?

Estou sem ideias. Algumas informações de segundo plano adicionais, caso isso ajude: os binários do ruby estão sendo executados como 32 bits; o cliente Sensu é o mais novo do site Sensuapp; o sistema está executando o System Center Endpoint Protection. O que estou perdendo ??

    
por Dan 12.11.2015 / 21:51

1 resposta

-1

Isso se tornou um bug dentro da biblioteca do ChildProcess Ruby e como ele lidava com a atribuição do processo do Windows a um objeto de trabalho (condição de corrida). Eu estarei compartilhando a correção com o autor assim que eu limpar o código.

    
por 06.01.2016 / 16:50