Epígrafe:
Existem duas razões pelas quais um computador pode ficar lento:
1. Vírus.
2. Antivírus.
© conselho de administradores de sistema experientes
Não me enganarei se disser que todo administrador de escritório se depara com a pergunta: Por que 1C fica mais lento?
E de novo, não me engano, se a primeira coisa que ele (s) fizer ao mesmo tempo, vai abrir o gerenciador de tarefas.
Os mais avançados, é claro, configurarão a coleção de contadores do Performance Monitor (o Zabbix neste contexto é quase o mesmo).
Além disso, existem instruções mais do que suficientes, listas de verificação para a configuração. Isso é o que assusta.
Tentarei oferecer uma visão geral dos principais e minha própria compilação.
Atenção!
O nome dos contadores difere não apenas dependendo do idioma do sistema operacional, mas também de sua edição.
Vamos adicionar a isso a visão e os erros dos autores das publicações e entender que um simples copiar-colar pode não funcionar.
No caso do perfmon, isso será agravado pelo fato de que você não receberá nenhum erro ao criar contadores na linha de comando, eles simplesmente não serão coletados.
Para ver uma lista de todos os contadores de desempenho disponíveis no computador atual, você precisa executar
- typeperf -q [objeto] irá listar todos os contadores
- typeperf -qx [object] exibirá uma lista de todos os contadores por instância de hardware, por exemplo, separadamente para as unidades A: e C:
Onde o parâmetro opcional [objeto] é um filtro no tipo de medidor, como PhysicalDisk
Esta conclusão pode redirecionar para um arquivo e então ter que escolher dele o
tipo necessárioperf -qx -y -o counters.txt
No futuro, para obter estatísticas de resumo deve ser substituído no caso de uma chave - qx o nome de uma instância particular em (_Total) , e para obter estatísticas para cada instância separadamente em (*)
Por exemplo:
\ PhysicalDisk (_Total) \ Current Disk Queue Length
\ PhysicalDisk (*) \ Current Disk Queue Length
Minha maneira recomendada é criar um arquivo bat de 3 linhas.
logman criar contador 1C_contador -f bincirc
logman atualizar contador 1C_contador -cf assembled.txt
logman atualizar contador 1C_contador -si 15 -v mmddhhmm
E adicionar os nomes dos contadores ao arquivo assembled.txt. Um por linha. Um exemplo prático e recomendado para o Windows Server 2012 R2 ENG estará abaixo.
lista sob o spoiler
\Processor(_Total)\% Processor Time
\Processor(_Total)\% User Time
\Processor(_Total)\% Privileged Time
\Memory\Available MBytes
\Memory\Pages/sec
\Memory\% Committed Bytes In Use
\Paging File(*)\% Usage
\System\Context Switches/sec
\System\Processor Queue Length
\System\Processes
\System\Threads
\PhysicalDisk(_Total)\Current Disk Queue Length
\PhysicalDisk(*)\Current Disk Queue Length
\PhysicalDisk(_Total)\Avg. Disk sec/Read
\PhysicalDisk(_Total)\Avg. Disk sec/Write
\Network interface(_Total)\Bytes Total/sec
\Network interface(_Total)\Current Bandwidth
\Process(1cv8)\% Processor Time
\Process(1cv8)\Private Bytes
\Process(1cv8)\Virtual Bytes
\Process(ragent)\% Processor Time
\Process(ragent)\Private Bytes
\Process(ragent)\Virtual Bytes
\Process(rphost)\% Processor Time
\Process(rphost)\Private Bytes
\Process(rphost)\Virtual Bytes
\Process(rmngr)\% Processor Time
\Process(rmngr)\Private Bytes
\Process(rmngr)\Virtual Bytes
\Process(sqlservr)\% Processor Time
\Process(sqlservr)\Private Bytes
\Process(sqlservr)\Virtual Bytes
\SQLServer:General Statistics\User Connections
\SQLServer:General Statistics\Processes blocked
\SQLServer:Buffer Manager\Buffer cache hit ratio
\SQLServer:Buffer Manager\Page life expectancy
\SQLServer:SQL Statistics\Batch Requests/sec
\SQLServer:SQL Statistics\SQL Compilations/sec
\SQLServer:SQL Statistics\SQL Re-Compilations/sec
\SQLServer:Access Methods\Page Splits/sec
\SQLServer:Access Methods\Forwarded Records/sec
\SQLServer:Access Methods\Full Scans/sec
\SQLServer:Memory Manager\Target Server Memory (KB)
\SQLServer:Memory Manager\Total Server Memory (KB)
\SQLServer:Memory Manager\Free Memory (KB)
\SQLServer:Databases(_Total)\Transactions/sec
\SQLServer:Databases(*)\Transactions/sec
\Processor(_Total)\% Processor Time
\Processor(_Total)\% User Time
\Processor(_Total)\% Privileged Time
\Memory\Available MBytes
\Memory\Pages/sec
\Memory\% Committed Bytes In Use
\Paging File(*)\% Usage
\System\Context Switches/sec
\System\Processor Queue Length
\System\Processes
\System\Threads
\PhysicalDisk(_Total)\Current Disk Queue Length
\PhysicalDisk(*)\Current Disk Queue Length
\PhysicalDisk(_Total)\Avg. Disk sec/Read
\PhysicalDisk(_Total)\Avg. Disk sec/Write
\Network interface(_Total)\Bytes Total/sec
\Network interface(_Total)\Current Bandwidth
\Process(1cv8)\% Processor Time
\Process(1cv8)\Private Bytes
\Process(1cv8)\Virtual Bytes
\Process(ragent)\% Processor Time
\Process(ragent)\Private Bytes
\Process(ragent)\Virtual Bytes
\Process(rphost)\% Processor Time
\Process(rphost)\Private Bytes
\Process(rphost)\Virtual Bytes
\Process(rmngr)\% Processor Time
\Process(rmngr)\Private Bytes
\Process(rmngr)\Virtual Bytes
\Process(sqlservr)\% Processor Time
\Process(sqlservr)\Private Bytes
\Process(sqlservr)\Virtual Bytes
\SQLServer:General Statistics\User Connections
\SQLServer:General Statistics\Processes blocked
\SQLServer:Buffer Manager\Buffer cache hit ratio
\SQLServer:Buffer Manager\Page life expectancy
\SQLServer:SQL Statistics\Batch Requests/sec
\SQLServer:SQL Statistics\SQL Compilations/sec
\SQLServer:SQL Statistics\SQL Re-Compilations/sec
\SQLServer:Access Methods\Page Splits/sec
\SQLServer:Access Methods\Forwarded Records/sec
\SQLServer:Access Methods\Full Scans/sec
\SQLServer:Memory Manager\Target Server Memory (KB)
\SQLServer:Memory Manager\Total Server Memory (KB)
\SQLServer:Memory Manager\Free Memory (KB)
\SQLServer:Databases(_Total)\Transactions/sec
\SQLServer:Databases(*)\Transactions/sec
Na verdade, a pressa não pode ler mais. Eles nem lêem mais.
Com o resto, trataremos das recomendações dos
Vamos começar estudando o conselho do próprio fornecedor: microsoft.com
Publishing Windows VM health
mesa sob o spoiler
| Logical disk | |
| Logical disk average disk seconds per transfer | |
| Logical disk average disk seconds per write | |
| Logical disk current disk queue length | |
| Logical disk free space megabytes low | |
| Logical disk percent idle time | |
| Logical disk free space percent low | |
| File system error or corruption | |
| Operating system | |
| Memory available megabytes | |
| Memory free system page table entries | |
| Memory pages per second | |
| Memory percent committed memory in use | |
| Total CPU utilization percentage | |
| DHCP Client service health | |
| DNS Client Service Health | |
| Event Log service health | |
| Windows Firewall service health | |
| RPC service health | |
| Server service health | |
| Windows Remote Management (WinRM) service health | |
| Network adapter | |
| Network adapter connection health | |
| Network adapter percent bandwidth used read | |
| Network adapter percent bandwidth used total | |
| Network adapter percent bandwidth used write | |
| Disk | |
| Disk current disk queue length | |
| Disk percent idle time | |
| Disk average seconds per read | |
| Disk average disk seconds per transfer | |
| Disk average disk seconds per write |
Usando esta opção, você definitivamente não se enganará, mas ela contém contadores que não são totalmente necessários para monitorar o servidor 1C.
Além disso, mas bem acima, no meu topo de opções há uma recomendação do
Manual de Evgeny Valerievich Filippov 1C: Um especialista em questões tecnológicas. Edição 2 A
lista é pequena, mas tudo é relevante e é claro que o autor a utilizou em sua obra.
mesa sob o spoiler
| Logical disk | ||
| Operating system | ||
| \Memory(_ Total)\%% Committed Bytes In Use | . | |
| \Memory(_Total)\Available Bytes | . | |
| \Memory(_Total)\Pages/sec | ||
| \Processor(_Total)\%% Processor Time | 70 % . | |
| \System(_Total)\Processor Queue Length | 2 * | |
| Network adapter | ||
| \Network lnterface(*)\Bytes Total/ sec | ||
| Disk | ||
| \PhysicalDisk(*)\Avg. Disk Queue Length | 2 * , | |
| \PhysicalDisk(_Total)\Avg. Disk Queue Length | ||
| \PhysicalDisk(_Total)\Avg. Disk Sec/Read | 10 . 50-200 . | |
| \PhysicalDisk(_Total)\Avg. Disk Sec/Write |
A lista do livro Manual metodológico para a operação de grandes sistemas de informação na plataforma "1C: Empresa 8"
A. Asatryan, A. Golikov, A. Morozov, D. Solomatin, Y. Fedorov é
ainda mais concisa, acrescentou monitoramento 1cv8, ragent, rphost, rmngr Vou colocá-lo em uma lista separada, porque pode e provavelmente não vai interferir com nenhuma opção, exceto para servidores SQL e 1C espaçados.
mesa sob o spoiler
"\Process("1cv8*")\%%Processor Time"
"\Process("1cv8*")\Private Bytes"
"\Process("1cv8*")\Virtual Bytes"
"\Process("ragent*")\%%Processor Time"
"\Process("ragent*")\Private Bytes"
"\Process("ragent*")\Virtual Bytes"
"\Process("rphost*")\%%Processor Time"
"\Process("rphost*")\Private Bytes"
"\Process("rphost*")\Virtual Bytes"
"\Process("rmngr*")\%%Processor Time"
"\Process("rmngr*")\Private Bytes"
"\Process("rmngr*")\Virtual Bytes"
\Process(1cv8)\% Processor Time
\Process(1cv8)\Private Bytes
\Process(1cv8)\Virtual Bytes
\Process(ragent)\% Processor Time
\Process(ragent)\Private Bytes
\Process(ragent)\Virtual Bytes
\Process(rphost)\% Processor Time
\Process(rphost)\Private Bytes
\Process(rphost)\Virtual Bytes
\Process(rmngr)\% Processor Time
\Process(rmngr)\Private Bytes
\Process(rmngr)\Virtual Bytes
\Process(sqlservr)\% Processor Time
\Process(sqlservr)\Private Bytes
\Process(sqlservr)\Virtual Bytes
"\Process("1cv8*")\Private Bytes"
"\Process("1cv8*")\Virtual Bytes"
"\Process("ragent*")\%%Processor Time"
"\Process("ragent*")\Private Bytes"
"\Process("ragent*")\Virtual Bytes"
"\Process("rphost*")\%%Processor Time"
"\Process("rphost*")\Private Bytes"
"\Process("rphost*")\Virtual Bytes"
"\Process("rmngr*")\%%Processor Time"
"\Process("rmngr*")\Private Bytes"
"\Process("rmngr*")\Virtual Bytes"
\Process(1cv8)\% Processor Time
\Process(1cv8)\Private Bytes
\Process(1cv8)\Virtual Bytes
\Process(ragent)\% Processor Time
\Process(ragent)\Private Bytes
\Process(ragent)\Virtual Bytes
\Process(rphost)\% Processor Time
\Process(rphost)\Private Bytes
\Process(rphost)\Virtual Bytes
\Process(rmngr)\% Processor Time
\Process(rmngr)\Private Bytes
\Process(rmngr)\Virtual Bytes
\Process(sqlservr)\% Processor Time
\Process(sqlservr)\Private Bytes
\Process(sqlservr)\Virtual Bytes
Lista de contadores de equipamentos.
mesa sob o spoiler
| Logical disk | |
| \LogicalDisk(_Total)\Free Megabytes | |
| Operating system | |
| \Memory(_Total)\Pages/sec | |
| \Memory\Available Mbytes | |
| \Processor(_Total)\%% Processor Time | |
| \System(_Total)\Processor Queue Length | |
| Network adapter | |
| \Network lnterface(*)\Bytes Total/ sec | |
| Disk | |
| \PhysicalDisk(*)\Avg. Disk Bytes/Read | |
| \PhysicalDisk(*)\Avg. Disk Bytes/Write | |
| \PhysicalDisk(*)\Avg. Disk Queue Length | |
| \PhysicalDisk(_Total)\Avg. Disk Queue Length |
A seguir está um artigo com Análise ITS de utilização de hardware para Windows Elena Skvortsova e sua cópia completa no kb que tem acesso lá , ele descreve todo o processo de configuração em detalhes e com fotos. Isso é muito útil para a primeira configuração.
Por toda a utilidade e acessibilidade do artigo, o sentimento não deixa que ele tenha sido escrito como a famosa carta de Matroskin: “seu filho é tio Sharik”, pessoas diferentes. Por exemplo, o texto não corresponde às imagens, para alguns contadores, os valores de limiar são descritos, mas não estão na lista, alguns contadores da lista são duplicados, por isso, não será possível copiar cole logman na linha de comando. Isso é um pouco desanimador para iniciantes.
Digressão lírica: Nem mesmo um mês se passou desde a rodada regional da competição ITS, onde uma das questões foi composta exatamente assim, só há uma resposta no código, e na foto, a matematicamente correta é completamente diferente . Os organizadores confiaram precisamente na correção do código. Embora seja compreensível que o código seja mal verificado, todos os livros científicos alertam sobre isso com antecedência.
mesa sob o spoiler
| Logical disk | ||
| \LogicalDisk(_Total)\% Free Space | ||
| Operating system | ||
| \Memory\Available Mbytes | ||
| \Processor(_Total)\% Idle Time | ||
| \Processor(_Total)\% Processor Time | 70% | |
| \Processor(_Total)\% User Time | ||
| \Processor(_Total)\Interrupts/sec | ||
| \System\Context Switches/sec | ||
| \System\File Read Bytes/sec | ||
| \System\File Write Bytes/sec | ||
| \System\Processes | ||
| \System\Processor Queue Length | 2 * | |
| \System\Threads | ||
| Memory Pages/sec
: 0 : 20 |
||
| Network adapter | 65% | |
| Disk | ||
| \PhysicalDisk(_Total)\Avg. Disk Queue Length | 2 * , | |
| \PhysicalDisk(_Total)\Avg. Disk Sec/Read | ||
| \PhysicalDisk(_Total)\Avg. Disk Sec/Write |
A lista é fechada por
www.veritas.com Analisando o desempenho do SQL usando os contadores do Monitor de desempenho
É claro que eles nunca ouviram falar de 1C, mas o fato de que viram uma ordem de magnitude mais servidores é um fato.
mesa sob o spoiler
| Logical disk | ||
| Operating system | ||
| Memory: Available Bytes | 25% . , , | |
| Memory: Cache Faults /sec | ||
| Memory: Page Faults /sec | ||
| Memory: Page Input /sec | 15 | |
| Memory: Page Reads /sec | 5 | |
| Memory: Pages/sec | 20 — | |
| Paging File: % Usage | ||
| Processor: % Processor Time_Total | 80% 10+ 24 | |
| System: Processor Queue Length | 2 10+ 24 . , 4 , 8 10- . | |
| Network adapter | ||
| Network Interface: Bytes Received/sec | ||
| Network Interface: Bytes Sent/sec | ||
| Network Interface: Bytes/sec | ||
| Network Interface: Output Queue Length | 0, 2 | |
| Disk | ||
| Physical Disk: Disk Writes/sec | ||
| Physical Disk: Disk Reads/sec | 20 , 50 | |
| Physical Disk: Avg. Disk Write Queue Length | ( , 2) | |
| Physical Disk: Avg. Disk Write /sec | ||
| Physical Disk: Avg. Disk Read Queue Length | ||
| Physical Disk: Avg. Disk Read /sec | ||
| Physical Disk: Avg. Disk Queue Length | 2 (3 = 6) 10+ 24 . |
red-gate.com
SQL Server desempenho e monitoramento de atividades
mesa sob o spoiler
| Logical disk | ||
| Logical Disk: Avg. Disk Queue Length | - , , , SAN , -. - Disk avg. . | |
| Logical Disk: Avg. Disk sec/Read | MDF NDF OLTP 20 . OLAP 30 . LDF 5 . , , 50 , -. | |
| Logical Disk: Avg. Disk sec/Write | MDF NDF OLTP 20 . OLAP 30 . LDF 5 . , , 50 , -. | |
| Logical Disk: Disk Transfers/sec | IOPS | |
| LogicalDisk: Free Megabytes | ||
| Operating system | ||
| Memory: Pages/sec | 1000, 100 , | |
| Memory: Available Bytes | ||
| Processor: % Processor Time (_Total) | « : » 80% ( ), | |
| System: Processor Queue Length | , 10 , | |
| Network adapter | ||
| Network Interface: Bytes Received/sec | 8 * (( : / ) + ( : / )) / ( : ) * 100 | |
| Network Interface: Bytes Sent/sec | ||
| Disk |
Quanto aos contadores para MS SQL, minha lista estava no início da publicação.
Há uma variedade incrível de opções, além de experts (não é fato que agora um deles não tenha se mexido silenciosamente para debaixo da mesa ao vê-lo).
Porém, um administrador realmente atrevido nunca mostrará sua atitude, ele brincará com suas sobrancelhas ao máximo e ouvirá a música do servidor.
Os interessados podem passar algumas noites de inverno (verão) organizando a lista completa.
- Navegador, instrumentos!
- Quatorze.
- Quanto é quatorze?
- E o que, dispositivos !?
© www.anekdot.ru Um
leitor atento dirá: Não basta coletar contadores de equipamentos, é preciso analisá-los também.
E vou mostrar a ele esta mesa.
Digressão técnica: embora expresse a opinião de especialistas respeitados, deve ser tratada com compreensão.
Por exemplo, muitos se lembrarão dos momentos em que imploraram ao diretor para comprar 32 MB adicionais para o servidor do departamento de contabilidade mencionado acima. O mesmo vale para a velocidade dos discos. Esses valores estão obsoletos.
Atenção!
" ". . . , .
| \Processor(_Total)\% Processor Time | 70% — 80% , +10 . 50% — |
| \Processor(_Total)\% User Time | , % Processor Time = % User Time + % Privileged Time, % User Time % Processor Time, % Privileged Time 0 |
| \Processor(_Total)\% Privileged Time | % Privileged Time 5-10%, >20%. |
| \Memory\Available MBytes | . — 25% |
| \Memory\Pages/sec | 1 : 20, 1000. Memory Available. 0. |
| \Memory\% Committed Bytes In Use | , . Memory \% Committed Bytes in Use Memory/Committed Bytes Memory\Commit Limit 90%, 95% OutOfMemory. |
| \Paging File(*)\% Usage | , Microsoft 100% , 50 75% |
| \System\Context Switches/sec | — 5000 /.
— 15000 / |
| \System\Processor Queue Length | 2 * |
| \System\Processes | |
| \System\Threads | |
| \PhysicalDisk(_Total)\Current Disk Queue Length | : 2 * , , - .
- , , , SAN , -. |
| \PhysicalDisk(*)\Current Disk Queue Length | |
| \PhysicalDisk(_Total)\Avg. Disk sec/Read | Current Disk Queue Lengt. MDF NDF OLTP 20 . OLAP 30 . LDF 5 . , , 50 , -. 1 — 50-200 . |
| \PhysicalDisk(_Total)\Avg. Disk sec/Write |
|
| \Network interface(_Total)\Bytes Total/sec | 65% |
| \Network interface(_Total)\Current Bandwidth | Network utilization = 8 * \Network interface(_Total)\Bytes Total/sec / (Network Interface: Current Bandwidth) *100 |
| \SQLServer:General Statistics\User Connections | |
| \SQLServer:General Statistics\Processes blocked | 0 |
| \SQLServer:Buffer Manager\Buffer cache hit ratio | - (OLTP), 1, 99% , , 90%, . 90% - . |
| \SQLServer:Buffer Manager\Page life expectancy | , 300 ( 5 ) , . |
| \SQLServer:SQL Statistics\Batch Requests/sec | |
| \SQLServer:SQL Statistics\SQL Compilations/sec | 10 Batch Requests/sec |
| \SQLServer:SQL Statistics\SQL Re-Compilations/sec | 10 SQL Compilations/sec |
| \SQLServer:Access Methods\Page Splits/sec | 20% Batch Requests/sec |
| \SQLServer:Access Methods\Forwarded Records/sec | . , SQL Server , . |
| \SQLServer:Access Methods\Full Scans/sec | , Index searches/sec |
| \SQLServer:Memory Manager\Target Server Memory (KB) | |
| \SQLServer:Memory Manager\Total Server Memory (KB) | |
| \SQLServer:Memory Manager\Free Memory (KB) | |
| \SQLServer:Databases(_Total)\Transactions/sec | |
| \SQLServer:Databases(*)\Transactions/sec | |
| \Process(1cv8)\% Processor Time
\Process(1cv8)\Private Bytes \Process(1cv8)\Virtual Bytes \Process(ragent)\% Processor Time \Process(ragent)\Private Bytes \Process(ragent)\Virtual Bytes \Process(rphost)\% Processor Time \Process(rphost)\Private Bytes \Process(rphost)\Virtual Bytes \Process(rmngr)\% Processor Time \Process(rmngr)\Private Bytes \Process(rmngr)\Virtual Bytes \Process(sqlservr)\% Processor Time \Process(sqlservr)\Private Bytes \Process(sqlservr)\Virtual Bytes |
|
Talvez você tenha sua opinião sobre monitoramento de equipamentos, venha até os comentários, escreva sua opinião, de preferência com links para fontes de conhecimento.
