Guia de rastreamento dinâmico Solaris

Minimizando cancelamentos

Como o DTrace armazena em buffer alguns dados de agregação no kernel, pode não haver espaço disponível quando uma nova chave for adicionada a uma agregação. Nesse caso, os dados serão cancelados, um contador será incrementado e o dtrace irá gerar uma mensagem indicando um cancelamento de agregação. Essa situação raramente acontece porque o DTrace mantém o estado de longa duração (que consiste na chave e no resultado intermediário da agregação) no nível do usuário onde o espaço pode crescer dinamicamente. Caso ocorram cancelamentos de agregação, você poderá aumentar o tamanho do buffer da agregação com a opção aggsize para reduzir a probabilidade de cancelamentos. Você também pode usar essa opção para minimizar as marcas de memória do DTrace. Assim como com qualquer opção de tamanho, aggsize pode ser especificada com qualquer sufixo de tamanho. A política de redimensionamento deste buffer é definida pela opção bufresize . Para obter mais detalhes sobre o armazenamento em buffer, consulte o Capítulo 11Buffers e armazenamento em buffer. Para obter mais detalhes sobre as opções, consulte o Capítulo 16Opções e ajustáveis.

Um método alternativo de eliminar cancelamentos de agregação é aumentar a taxa na qual os dados de agregação são consumidos no nível do usuário. O padrão dessa taxa é de uma vez por segundo e pode ser explicitamente ajustado com a opção aggrate . Assim como com qualquer opção de taxa, aggrate pode ser especificada com qualquer sufixo de tempo, mas o padrão é taxa por segundo. Para obter mais detalhes sobre a opção aggsize, consulte o Capítulo 16Opções e ajustáveis.