InglêsFrancêsEspanhol

Ad


favicon do OnWorks

lttng - Online na nuvem

Execute lttng no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando lttng que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


lttng - ferramenta de linha de comando de controle do rastreador LTTng 2.x

SINOPSE


lttng [OPÇÕES]

DESCRIÇÃO


O projeto LTTng visa fornecer ferramentas de rastreamento altamente eficientes para Linux. Seus traçadores
ajudar a rastrear problemas de desempenho e depurar problemas envolvendo vários concorrentes
processos e threads. O rastreamento em vários sistemas também é possível.

A lttng A ferramenta de linha de comando do pacote lttng-tools é usada para controlar o kernel
e rastreamento do espaço do usuário. Cada interação com o rastreador deve ser feita por esta ferramenta ou
pela biblioteca liblttng-ctl fornecida pelo pacote lttng-tools.

LTTng usa um daemon de sessão (sessão lttng(8)), atuando como um registro de rastreamento, que
permite que você interaja com vários rastreadores (kernel e espaço do usuário) dentro do mesmo
container, uma sessão de rastreamento. Os traços podem ser coletados do kernel e / ou instrumentados
formulários (lttng-ust(3)). Agregar e ler esses rastros é feito usando o
babeltrace(1) visualizador de texto.

Introduzimos a noção de rastreamento domínios que é essencialmente um tipo de rastreador (kernel,
espaço do usuário, JUL, LOG4J ou Python por enquanto). No futuro, poderemos ver mais rastreadores como
por exemplo, um hipervisor. Para alguns comandos, você precisará especificar em qual domínio o
comando opera (-u, -k, -l, -j ou -p). Por exemplo, o domínio do kernel deve ser especificado
ao habilitar um evento de kernel.

Para rastrear o kernel, o daemon de sessão precisa estar rodando como root. LTTng
fornece o uso de um rastreamento grupo (padrão: rastreamento). Quem está nesse grupo pode
interagir com o daemon da sessão raiz e, assim, rastrear o kernel. Daemons de sessão podem co-
existe, o que significa que você pode ter um daemon de sessão rodando como Alice que pode ser usado para
rastreie seus aplicativos junto com um daemon root ou até mesmo um daemon Bob. Nós altamente
recomendo iniciar o daemon de sessão no momento da inicialização para rastreamento estável e de longo prazo.

Cada aplicativo de espaço do usuário equipado com lttng-ust(3) será registrado automaticamente
com o daemon de sessão raiz e seu daemon de sessão de usuário. Isso permite que cada daemon liste
as aplicações rastreáveis ​​disponíveis e os pontos de rastreamento a qualquer momento (veja o Lista
comando).

OPÇÕES


Este programa segue a sintaxe de linha de comando GNU usual com longas opções começando com dois
travessões. Abaixo está um resumo das opções disponíveis.

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

-V, --versão
Mostrar versão.

-dentro, --verbose
Aumente a verbosidade. Três níveis de detalhamento estão disponíveis, os quais são acionados por
colocando v adicional na opção (-vv ou -vvv)

-q, --quieto
Suprima todas as mensagens (mesmo erros).

-g, --grupo NOME
Defina o nome do grupo de rastreamento unix. (padrão: rastreio)

-n, --sem sessão
Não gere automaticamente um daemon de sessão.

--caminho da sessão PATH
Defina o caminho binário completo do daemon de sessão.

--list-opções
Lista simples de opções de lttng.

--list-comandos
Lista simples de comandos lttng.

-m, --mi TIPO
Interface da máquina

TYPE compatível: XML

O modo de interface de máquina (MI) converte a impressão bonita tradicional em uma máquina
sintaxe de saída. O modo MI fornece uma maneira resistente à mudança de formato para acessar informações
gerado por meio da linha de comando lttng.

Ao usar o modo MI, os dados são impressos em stdout. Erro e aviso são impressos em
stderr com o formato padrão de impressão bonita.

Se ocorrer algum erro durante a execução de um comando, o valor de retorno do
comando será diferente de zero. Neste caso, lttng NÃO garante o
sintaxe e validade de dados da saída de MI gerada.

Para o tipo de saída XML, um arquivo de definição de esquema (XSD) usado para validação pode ser
encontrado em src / common / mi_lttng.xsd

COMANDOS


adicionar contexto [OPÇÕES]
Adicione contexto ao (s) evento (s) e / ou canal (es).

Um contexto é basicamente uma informação extra anexada a um canal. Por exemplo, você
poderia pedir ao rastreador para adicionar as informações PID para todos os eventos em um canal. Vocês
também pode adicionar contadores de unidade de monitoramento de desempenho (perf PMU) usando o kernel perf
API.

Por exemplo, este comando adicionará as informações de contexto 'prio' e dois por CPU
contadores de desempenho (falhas de ramificação de hardware e falhas de cache), para todos os eventos no rastreamento
saída de dados:

# lttng add-context -k -t prio -t perf: cpu: branch-misses \
-t perf: cpu: cache-misses

Por favor, dê uma olhada na ajuda (-h / - help) para uma lista detalhada de
contextos.

Os contadores de desempenho estão disponíveis por CPU ("perf: cpu: ...") e por thread
("perf: thread: ...") contadores. Atualmente, os contadores por CPU só podem ser usados ​​com o
domínio de rastreamento de kernel e contadores por thread só podem ser usados ​​com o UST
rastreamento de domínio.

Se nenhum canal for fornecido (-c), o contexto é adicionado a todos os canais que já foram
ativado. Se a sessão não tiver canal, um canal padrão será criado. De outra forma
o contexto será adicionado apenas ao canal fornecido (-c).

If -sim, --sessão for omitido, o nome da sessão será obtido do arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

-sim, --sessão NOME
Aplicar no nome da sessão.

-c, --canal NOME
Aplicar no nome do canal.

-k, --núcleo
Inscreva-se para o rastreador de kernel

-você, --espaço do usuário
Inscreva-se para o rastreador de espaço do usuário

-t, --modelo TIPO
Tipo de contexto. Você pode repetir esta opção na linha de comando. Por favor, use
"lttng add-context -h" para listar todos os tipos disponíveis.

calibrar [OPÇÕES]
Quantificar sobrecarga de LTTng

O comando de calibração LTTng pode ser usado para descobrir a sobrecarga média combinada
do rastreador LTTng e os mecanismos de instrumentação usados. Essa sobrecarga pode ser
calibrado em termos de tempo ou usando qualquer contador de desempenho PMU disponível
no sistema.

Por enquanto, a única calibração implementada é a da função do kernel
instrumentação (kretprobes).

* Calibrar a instrumentação da função kernel

Vamos usar um exemplo para mostrar esta calibração. Usamos um processador i7 com 4
registros PMU de uso geral. Esta informação está disponível através da emissão de dmesg,
procurando por "registros genéricos".

Esta sequência de comandos irá reunir um rastreamento executando um kretprobe ligado a um
função vazia, coleta de contadores de PMU. LLC (Cache de último nível) perde informações
(veja lttng add-context --help para ver a lista de contadores PMU disponíveis).

# lttng criar função de calibração
# lttng enable-event calibrar --kernel \
--função lttng_calibrate_kretprobe
# lttng add-context --kernel -t perf: cpu: LLC-load-misses \
-t perf: cpu: LLC-store-misses \
-t perf: cpu: LLC-prefetch-misses
# lttng início
# para a em $ (seq 1 10); Faz \
lttng calibrar --kernel --função;
feito
# lttng destruir
# babeltrace $ (ls -1drt ~ / lttng-traces / calibrate-function-*\
| cauda -n 1)

A saída do babeltrace pode ser salva em um arquivo de texto e aberta em uma planilha
(por exemplo, oocalc) para se concentrar no delta do contador por PMU entre
eventos "calibrate_entry" e "calibrate_return". Observe que esses contadores são por
CPU, então os eventos de agendamento precisam estar presentes para contabilizar a migração entre
CPU. Portanto, para fins de calibração, apenas eventos que permanecem na mesma CPU devem
ser considerado.

O resultado médio, para o i7, em 10 amostras:

Desv.Pad. médio
perf_LLC_load_misses: 5.0 0.577
perf_LLC_store_misses: 1.6 0.516
perf_LLC_prefetch_misses: 9.0 14.742

Como podemos notar, as perdas de carga e armazenamento são relativamente estáveis ​​entre as execuções
(seu desvio padrão é relativamente baixo) em comparação com os erros de pré-busca. Nós
pode concluir a partir dessas informações que perdas de carga e armazenamento LLC podem ser contabilizadas
para muito precisamente, mas pré-buscas dentro de uma função parecem se comportar também
erraticamente (não há muita relação de causalidade entre o código executado e a pré-busca da CPU
atividade) a ser contabilizada.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

-k, --núcleo
Inscreva-se para o rastreador de kernel

-você, --espaço do usuário
Inscreva-se para o rastreador de espaço do usuário

--função
Teste de entrada / retorno de função dinâmica (padrão)

crio [NOME] [OPÇÕES]
Crie uma sessão de rastreamento.

Uma sessão de rastreamento contém canal (is) que contém evento (s). É domínio
agnóstico, o que significa que canais e eventos podem ser habilitados para o rastreador de espaço do usuário
e / ou o rastreador de kernel. Ele atua como um contêiner agregando múltiplos rastreamentos
fontes.

Na criação, um .lttngrc arquivo é criado em seu diretório $ HOME contendo o
nome da sessão atual. Se NAME for omitido, um nome de sessão será criado automaticamente
tendo este formato: 'auto-yyyymmdd-hhmmss'.

Se nenhum -ó, --resultado for especificado, os rastreamentos serão gravados em $ HOME / lttng-traces.

A variável de ambiente $ HOME pode ser substituída definindo o ambiente
variável LTTNG_HOME. Isso é útil quando o usuário que executa os comandos não possui
diretório inicial gravável.

O nome da sessão NÃO DEVE conter o caractere '/'.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

-ó, --resultado PATH
Especifique o caminho de saída para rastreios

- sem saída
Traços não serão produzidos

--instantâneo
Defina a sessão no modo instantâneo. Criado no modo sem saída e usa o
URL, se for especificado, como a saída de instantâneo padrão. Cada canal
será definido no modo de substituição e com saída mmap (emenda não suportada).

--viver [USEC]
Defina a sessão exclusivamente no modo ao vivo. O parâmetro é o atraso em
microssegundos antes de os dados serem liberados e transmitidos. O modo ao vivo permite
você pode transmitir o rastreamento e visualizá-lo enquanto está sendo gravado por qualquer rastreador.
Para isso, você precisa de um lttng-relayd e esta sessão requer um URL de rede
(-U ou -C / -D). Se nenhum USEC ou URL for fornecido, o padrão é usar um cronômetro
valor definido como 1000000 e o URL da rede definido como net: //127.0.0.1.

Para ler uma sessão ao vivo, você pode usar babeltrace(1) ou a transmissão ao vivo
protocolo em doc / live-reading-protocol.txt. Aqui está um exemplo:

$ lttng-relayd -o / tmp / lttng
$ lttng create --live 200000 -U net: // localhost
$ lttng enable-event -a --userspace
$ lttng início

Após o início, você será capaz de ler os eventos enquanto eles estão sendo
gravado em / tmp / lttng.

--shm-caminho PATH

Caminho onde os buffers de retenção de memória compartilhada devem ser criados. Útil quando usado
com PRAMFS ou outros sistemas de arquivos de memória persistente para extrair dados de rastreamento em
o caso de um travamento exigindo uma reinicialização.

veja a Lttng-crash(1) utilitário para obter mais informações sobre recuperação de falhas.

-VOCÊ, --set-url = URL
Defina a URL para o destino de saída do consumidor. É persistente para o
duração da sessão. Refaça o comando para alterá-lo. Isso definirá os dados e
URL de controle para a rede.

-C, --ctrl-url = URL
Defina o URL do caminho de controle. (Deve-se usar -D também)

-D, --data-url = URL
Defina o URL do caminho dos dados. (Deve-se usar -C também)

Usando essas opções, cada chamada de API pode ser controlada individualmente. Por exemplo, -C
não habilita o consumidor automaticamente. Você precisará da opção -e para isso.

URL FORMATO:

proto: // [HOST | IP] [: PORT1 [: PORT2]] [/ TRACE_PATH]

Os protocolos suportados são (proto):

Arquivo://...
Caminho completo do sistema de arquivos local.

internet://...
Isso usará a camada de transporte de rede padrão, que é TCP para ambos
controle (PORT1) e porta de dados (PORT2). As portas padrão são respectivamente
5342 e 5343. Observe que net [6]: // ainda não é compatível.

tcp [6]: // ...
Só pode ser usado com -C e -D juntos

NOTA: o endereço IPv6 DEVE ser colocado entre colchetes '[]' (rfc2732)

EXEMPLOS:

# lttng create -U net: //192.168.1.42
Usa TCP e portas padrão para o destino fornecido.

# lttng create -U net6: // [fe80 :: f66d: 4ff: fe53: d220]
Usa TCP, portas padrão e IPv6.

# lttng create s1 -U net: //myhost.com: 3229
Crie a sessão s1 e defina seu consumidor para myhost.com na porta 3229 para
controlar.

destruir [NOME] [OPÇÕES]
Sessão de rastreamento de desmontagem

Memória livre no daemon de sessão e no lado do rastreador. Foi-se!

Se NAME for omitido, o nome da sessão será obtido do arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

-uma, --tudo
Destrua todas as sessões

--list-opções
Lista simples de opções

habilitar canal NOME [, NOME2, ...] (-k | -u) [OPÇÕES]
Habilitar canal de rastreamento

Para habilitar um evento, você deve habilitar o evento e o canal que contém
.

If -sim, --sessão for omitido, o nome da sessão será obtido do arquivo .lttngrc.

Exatamente um de -k ou -u deve ser especificado.

É importante notar que se um certo tipo de buffers for usado, a sessão irá
ser definido com esse tipo e todos os outros canais subsequentes precisam ter o mesmo tipo.

Observe que, uma vez que a sessão foi iniciada e habilitada no lado do tracer, é
não é mais possível habilitar um novo canal para aquela sessão.

OPÇÕES:

-h, --Socorro
Mostre esta ajuda

--list-opções
Lista simples de opções

-sim, --sessão NOME
Aplicar no nome da sessão

-k, --núcleo
Aplicar ao rastreador de kernel

-você, --espaço do usuário
Aplicar ao rastreador de espaço do usuário

--descartar
Descartar evento quando os subbuffers estiverem cheios (padrão)

- sobrescrever
Modo gravador de vôo: sobrescreve eventos quando os subbuffers estão cheios. O número
do subbuffer deve ser 2 ou mais.

--subbuf-tamanho TAMANHO
Tamanho do subbuffer em bytes {+ k, + M, + G}. (UST uid padrão: 131072, UST pid:
4096, kernel: 262144, metadados: 4096) Arredondado para a próxima potência de 2.

O tamanho mínimo do subbuffer, para cada rastreador, é o valor máximo entre
padrão acima e o tamanho da página do sistema. Você pode emitir este comando para obter
o tamanho da página atual em seu sistema: $ getconf TAMANHO DA PÁGINA

--num-subbuf NUM
Número de subbuffers. (padrão UST uid: 4, UST pid: 4, kernel: 4, metadados:
2) Arredondado para a próxima potência de 2.

--switch-temporizador USEC
Intervalo do temporizador do subbuffer de mudança em µsec. (UST uid padrão: 0, UST pid: 0,
kernel: 0, metadados: 0)

--temporizador de leitura USEC
Leia o intervalo do temporizador em µsec. (UST uid padrão: 0, UST pid: 0, kernel:
200000, metadados: 0)

--resultado TIPO
Tipo de saída do canal. Valores possíveis: mmap, splice (uid UST padrão: mmap,
UST pid: mmap, kernel: splice, metadados: mmap)

--buffers-uid
Use por buffer UID (-u apenas). Buffers são compartilhados entre aplicativos que
têm o mesmo UID.

--buffers-pid
Use por buffer PID (-u apenas). Cada aplicativo possui seus próprios buffers.

--buffers-global
Use buffer compartilhado para todo o sistema (apenas -k)

-C, --tracefile-size TAMANHO
Tamanho máximo de cada arquivo de rastreamento em um fluxo (em bytes). 0 significa
ilimitado. (padrão: 0) Observação: os traços gerados com esta opção podem
relatar eventos descartados de forma imprecisa conforme CTF 1.8.

-C, --tracefile-count CONTAGEM
Usado em conjunto com a opção -C, isso limitará o número de arquivos
criado para a contagem especificada. 0 significa ilimitado. (padrão: 0)

EXEMPLOS:

$ lttng habilitar canal -k -C 4096 -W 32 canais1
Para cada fluxo, o tamanho máximo de cada arquivo de rastreamento será 4096 bytes e
haverá no máximo 32 arquivos diferentes. A contagem de arquivos é anexada
após o número do stream, conforme mostrado no exemplo a seguir. O ultimo traço
arquivo é menor que 4096, pois não foi totalmente preenchido.

~ / lttng-traces /[...] / chan1_0_0 (4096)
~ / lttng-traces /[...] / chan1_0_1 (4096)
~ / lttng-traces /[...] / chan1_0_2 (3245)
~ / lttng-traces /[...] / chan1_1_0 (4096)
...

$ lttng habilitar canal -k -C 4096
Isso criará arquivos de rastreamento de 4096 bytes e criará novos, desde que
pois há dados disponíveis.

habilitar evento NOME [, NOME2, ...] (-k | -u | -j | -l | -p) [OPÇÕES]
Habilitar rastreamento de evento

Um evento de rastreamento é sempre atribuído a um canal. Se -c, --canal é omitido, um
canal padrão chamado 'channel0'é criado e o evento é adicionado a ele. Se -c,
--canal é omitido, mas um canal não padrão já existe na sessão,
um erro é retornado. Para o rastreador de espaço do usuário, usando -uma, --tudo é o mesmo que
usando o curinga "*".

If -sim, --sessão for omitido, o nome da sessão será obtido do arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

-sim, --sessão NOME
Aplicar no nome da sessão

-c, --canal NOME
Aplicar no nome do canal

-uma, --tudo
Habilite todos os tracepoints e syscalls. Na verdade, isso permite um único caractere curinga
evento "*".

-k, --núcleo
Inscreva-se para o rastreador de kernel

-você, --espaço do usuário
Inscreva-se para o rastreador de espaço do usuário

-j, --julho
Inscreva-se para o aplicativo Java usando a interface Java Util Logging (JUL)

-eu, --log4j
Inscreva-se para o aplicativo Java usando LOG4J

-p, --Pitão
Inscreva-se no aplicativo Python usando o módulo de registro.

--traceponto
Evento de Tracepoint (padrão). O rastreador do espaço do usuário suporta curingas no final
de corda. Não se esqueça de citar para lidar com a expansão do bash. por exemplo:
"*"
"app_component: na *"

--loglevel NOME
O nível de log do ponto de rastreamento varia de 0 a nível de log. Listado na ajuda (-h). Para
o domínio JUL, os intervalos de nível de log são detalhados com a opção --help, portanto
começando de GRAVE a FINEST. Para o domínio LOG4J, os níveis de log variam de
FATAL para TRACE, que também são detalhados na ajuda. Para o domínio Python,
níveis de log variam de CRÍTICO a DEBUG, que são detalhados na ajuda como
bem.

--loglevel-somente NOME
Nível de log do ponto de rastreamento (apenas este nível de log). O nível de log ou somente nível de log
as opções devem ser combinadas com um nome de ponto de rastreamento ou curinga de ponto de rastreamento.

--sonda (adicionar | símbolo | símbolo + deslocamento)
Sonda dinâmica. Addr e offset podem ser octal (0NNN ...), decimal (NNN ...) ou
hexadecimal (0xNNN ...)

--função (adicionar | símbolo | símbolo + deslocamento)
Sonda de entrada / retorno de função dinâmica. Addr e offset podem ser octais (0NNN ...),
decimal (NNN ...) ou hexadecimal (0xNNN ...)

--syscall
Evento de chamada do sistema.

--filtro 'expressão'
Defina um filtro em um evento recém-habilitado. Expressão de filtro em campos de evento e
contexto. O evento será registrado se a expressão do filtro for avaliada como
VERDADE. Especifique apenas na primeira ativação de um determinado evento em uma sessão.
Especificar um filtro só é permitido ao habilitar eventos dentro de uma sessão
antes de o rastreio ser iniciado. Se o filtro não conseguir se vincular ao evento dentro
o domínio rastreado, o evento será descartado.

Exemplos de expressão:

'intfield> 500 && intfield <503'
'(strfield == "test" || intfield! = 10) && intfield> 33'
'doublefield> 1.1 && intfield <5.3'

Caracteres curinga são permitidos no final das strings:
'seqfield1 == "te *"' Em literais de string, o caractere de escape é um '\'.
Use '\ *' para o caractere '*' e '\\' para a seqüência de caracteres '\'.
O curinga corresponde a qualquer sequência de caracteres, incluindo uma substring vazia
(corresponde a 0 ou mais caracteres).

As informações de contexto podem ser usadas para filtragem. Os exemplos abaixo mostram
uso de filtragem de contexto no nome do processo (usando um caractere curinga), processo
Intervalo de ID e ID de thread exclusivo. Os IDs de processo e thread de execução
aplicativos podem ser encontrados nas colunas "PID" e "LWP" do "ps -eLf"
comando.

'$ ctx.procname == "demo *"'
'$ ctx.vpid> = 4433 && $ ctx.vpid <4455'
'$ ctx.vtid == 1234'

As informações de contexto estão disponíveis para todos os filtros, independentemente de o add-
comando de contexto foi usado para adicioná-lo ao canal do evento, desde que
o campo de contexto existe para esse domínio. Por exemplo, os exemplos de filtro
fornecido acima nunca falhará ao vincular: nenhum contexto de adição é necessário para o
canal do evento.

-x, --excluir LISTA
Adicionar exclusões aos pontos de rastreamento da UST: eventos que correspondem a qualquer um dos itens no
LIST separadas por vírgulas não são ativadas, mesmo se corresponderem a um caractere curinga
definição do evento.

Esta opção também é aplicável com o -uma, --tudo opção, caso em que todos
Os tracepoints da UST são ativados, exceto aqueles cujos nomes correspondem a qualquer um dos
itens em LIST.

desativar canal NOME [, NOME2, ...] (-k | -u) [OPÇÕES]
Desativar canal de rastreamento

Desativar um canal desativa o rastreamento de todos os eventos do canal. Um canal
pode ser reativado chamando lttng habilitar canal NOME novamente.

If -sim, --sessão for omitido, o nome da sessão será obtido do arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

-sim, --sessão NOME
Aplicar no nome da sessão

-k, --núcleo
Inscreva-se para o rastreador de kernel

-você, --espaço do usuário
Inscreva-se para o rastreador de espaço do usuário

desabilitar evento NOME [, NOME2, ...] (-k | -u | -j | -l | -p) [TIPO] [OPÇÕES]
Desativar evento de rastreamento

O evento, uma vez desativado, pode ser reativado chamando lttng habilitar evento NOME
novamente.

If -sim, --sessão for omitido, o nome da sessão será obtido do arquivo .lttngrc.

If -c, --canal for omitido, o nome do canal padrão será usado. Se -c, --canal is
omitido, mas um canal não padrão já existe na sessão, um erro é
devolvida.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

-sim, --sessão NOME
Aplicar no nome da sessão

-c, --canal NOME
Aplicar no nome do canal

-uma, --todos os eventos
Desative todos os eventos. Isso NÃO desativa SÓ "*", mas sim todos os
eventos da sessão

-k, --núcleo
Inscreva-se para o rastreador de kernel

-você, --espaço do usuário
Inscreva-se para o rastreador de espaço do usuário

-j, --julho
Inscreva-se para o aplicativo Java usando a interface Java Util Logging (JUL)

-eu, --log4j
Inscreva-se para o aplicativo Java usando LOG4J

-p, --Pitão
Inscreva-se no aplicativo Python usando o módulo de registro

TIPO (núcleo domínio só):

--tudo Desativar evento de todos os tipos

--traceponto
Desativar evento do tipo tracepoint

--syscall
Desativar evento do tipo syscall

--sonda
Desativar evento do tipo de teste

--função
Desativar evento de função de tipo

Lista [OPÇÕES] [SESSÃO [OPÇÕES DA SESSÃO]]
Lista as informações da sessão de rastreamento.

Sem argumentos, ele listará as sessões de rastreamento disponíveis.

Com o nome da sessão, ele exibirá os detalhes da sessão, incluindo o
caminho do arquivo de rastreamento, os canais associados e seu estado (ativado e
desativado), os eventos ativados e muito mais.

Com -k sozinho, ele irá listar todos os eventos de kernel disponíveis (exceto as chamadas de sistema
eventos). Com -j sozinho, o evento JUL disponível no aplicativo registrado irá
ser lista. O evento corresponde ao nome do Logger no aplicativo Java JUL.
Com -l sozinho, o evento LOG4J disponível do aplicativo registrado será listado.
O evento corresponde ao nome do Logger no aplicativo Java LOG4J. Com -p
sozinho, o evento Python disponível do aplicativo registrado será listado. o
evento corresponde ao nome do Logger no aplicativo Python. Com -u sozinho,
irá listar todos os eventos de espaço do usuário disponíveis de aplicativos registrados. Aqui está um
exemplo de 'lttng list -u':

PID: 7448 - Nome: /tmp/lttng-ust/tests/hello/.libs/lt-hello
ust_tests_hello: tptest_sighandler (tipo: tracepoint)
ust_tests_hello: tptest (tipo: tracepoint)

Agora você pode habilitar qualquer evento listado usando o nome: ust_tests_hello: tptest.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

-k, --núcleo
Selecione o domínio do kernel

-você, --espaço do usuário
Selecione o domínio do espaço do usuário.

-j, --julho
Inscreva-se para o aplicativo Java usando JUL

-eu, --log4j
Inscreva-se para o aplicativo Java usando LOG4J

-p, --Pitão
Inscreva-se no aplicativo Python usando o módulo de registro.

-f, --Campos
Listar campos de eventos

SESSÃO OPÇÕES:

-c, --canal NOME
Detalhes da lista de um canal

-d, --domínio
Listar domínio (s) disponível (s)

carregar [OPÇÕES] [NOME]
Configuração da sessão de rastreamento de carga

Se NAME for omitido, todas as configurações de sessão encontradas tanto na sessão do usuário
diretório de configuração (padrão: ~ / .lttng / sessões /) e a sessão do sistema
o diretório de configuração (padrão: / etc / lttng / sessions /) será carregado. Observe que
as sessões no diretório do usuário são carregadas primeiro e depois em todo o sistema
diretório são carregados.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

-uma, --tudo
Carregue todas as configurações de sessão (padrão).

-eu, --caminho de entrada PATH
Especifique o caminho de entrada para configurações de sessão. Isso substitui o
diretório de configuração de sessão padrão.

-f, --força
Sobrescrever a (s) configuração (ões) da sessão atual se for uma sessão com o mesmo nome
já existe.

salvar [OPÇÕES] [SESSÃO]
Salvar configuração da sessão de rastreamento

Se SESSION for omitido, todas as configurações de sessão serão salvas individualmente
.lttng arquivos no diretório de configuração de sessão do usuário (padrão:
~ / .lttng / sessões /) O esquema de nomenclatura do arquivo de configuração de sessão padrão é
SESSÃO.lttng.

Por exemplo, um usuário no grupo de rastreamento salvando uma sessão de uma sessão raiz
daemon irá salvá-lo em seu diretório de usuário.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

-uma, --tudo
Salve todas as configurações de sessão (padrão).

-ó, --caminho de saída PATH
Especifique o caminho de saída para sessões salvas. Isso substitui o padrão
diretório de configuração da sessão.

-f, --força
Substitua o arquivo de configuração da sessão se o nome da sessão entrar em conflito.

set-sessão NOME [OPÇÕES]
Definir o nome da sessão atual

Irá alterar o nome da sessão no arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

instantâneo [OPÇÕES] AÇÃO
Comando instantâneo para sessão LTTng.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

AÇAO:

adicionar saída [-m ] [-s ] [-n ] | -C -D

Configure e adicione uma saída de instantâneo para uma sessão. A saída é o destino
para onde o instantâneo será enviado. Apenas uma saída é permitida. Para mudar isso,
você precisará excluí-lo e adicionar novamente o novo.

Del-output ID | NOME [-s ]

Exclua uma saída para uma sessão usando o ID da saída. Você pode especificar
a saída por nome ou use seu ID conforme retornado pelo comando list-output.

saída de lista [-s ]

Liste a saída de uma sessão. Os atributos da saída são impressos.

registro [-m ] [-s ] [-n ] [ | -C -D ]

Capture o (s) buffer (s) de uma sessão para todos os domínios. Se um URL for especificado,
é usado em vez de uma saída adicionada anteriormente. Especificando apenas um nome ou / e
um tamanho máximo substituirá os valores de saída atuais. Por exemplo, você pode
grave um instantâneo com um tamanho máximo personalizado ou com um nome diferente.

$ lttng snapshot add-output -n mysnapshot file: /// data / snapshot
[...]
$ lttng registro instantâneo -n new_name_snapshot

O acima irá criar um instantâneo em / data / snapshot / new_name_snapshot *
diretório em vez de mysnapshot * /

DETALHADO AÇÃO OPÇÕES

-sim, --sessão NOME
Aplicar ao nome da sessão.

-n, --nome NOME
Nome da saída do instantâneo.

-m, --tamanho máximo TAMANHO
Tamanho máximo em bytes do instantâneo. O tamanho máximo não inclui o
arquivo de metadados. O formato legível por humanos é aceito: {+ k, + M, + G}. Por exemplo,
- tamanho máximo 5M

-C, --ctrl-url URL
Defina o URL do caminho de controle. (Deve-se usar -D também)

-D, --data-url URL
Defina o URL do caminho dos dados. (Deve-se usar -C também)

começo [NOME] [OPÇÕES]
Comece a rastrear

Ele iniciará o rastreamento de todos os rastreadores para uma sessão de rastreamento específica. Se NAME for
omitido, o nome da sessão é obtido do arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

Pare [NOME] [OPÇÕES]
Pare de rastrear

Isso interromperá o rastreamento de todos os rastreadores para uma sessão de rastreamento específica. Antes
retornando, o comando verifica a disponibilidade de dados, o que significa que vai esperar até
o rastreamento é legível para a sessão. Use --no-wait para evitar esse comportamento.

Se NAME for omitido, o nome da sessão será obtido do arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

- não espere
Não espere pela disponibilidade de dados.

pista (-k | -u) --pid [PID1 [, PID2 [, ...]]] [OPÇÕES]
Adiciona uma ou mais entradas a um rastreador

A pista comando adiciona uma ou mais entradas a um rastreador. Um rastreador é uma lista de permissões
de recursos. Os recursos rastreados têm permissão para emitir eventos, desde que esses eventos
estão habilitados (veja o habilitar evento comando).

As entradas do rastreador podem ser removidas da lista de permissões com o desviar comando.

A partir desta versão, o único rastreador disponível é o PID perseguidor. O ID do processo
O rastreador (PID) segue um ou mais IDs de processo; apenas os processos com um rastreado
Os PID têm permissão para emitir eventos. Por padrão, todos os PIDs possíveis no sistema são
rastreado: qualquer processo pode emitir eventos habilitados (equivalente a lttng pista --pid --tudo
para todos os domínios).

Com o rastreador PID é possível, por exemplo, gravar todas as chamadas do sistema
chamado por um determinado processo:

$ lttng enable-event --kernel --all --syscall
$ lttng faixa --kernel --pid 2345
$ lttng início

Se todos os PIDs forem rastreados (ou seja, lttng pista --pid --tudo, que é o padrão
estado de todos os domínios ao criar uma sessão de rastreamento), em seguida, usando o pista comando
com um ou mais PIDs específicos tem o efeito de primeiro remover todos os PIDs de
a lista de permissões e, em seguida, adicionando os PIDs especificados.

Suponha que o PID máximo seja 7 para os seguintes exemplos:

Lista de permissões inicial: [0] [1] [2] [3] [4] [5] [6] [7]

$ lttng faixa --userspace --pid 3,6,7

Lista de permissões: [] [] [] [3] [] [] [6] [7]

$ lttng untrack --userspace --pid 7

Lista de permissões: [] [] [] [3] [] [] [6] []

$ lttng faixa --userspace --pid 1,5

Lista de permissões: [] [1] [] [3] [] [5] [6] []

Deve-se notar que o rastreador PID rastreia os IDs de processo numéricos. Deveria ter
processo com uma determinada saída de ID e outro processo receber este ID, o último
também teria permissão para emitir eventos.

veja a desviar documentação do comando para obter mais detalhes sobre como remover entradas.

OPÇÕES:

-sim, --sessão NOME
Aplicar ao nome da sessão.

-k, --núcleo
Aplique ao rastreador de kernel.

-você, --espaço do usuário
Aplicar ao rastreador de espaço do usuário.

-p, --pid [PIDS]
Rastrear IDs de processo PIDS (adicionar à lista de permissões).

PIDS é uma lista separada por vírgulas de PIDs para adicionar ao rastreador PID.

O argumento PIDS deve ser omitido ao usar também o --tudo opção.

-uma, --tudo
Usado em conjunto com um vazio --pid opção: rastrear todos os IDs de processo (adicionar
todas as entradas para a lista de permissões).

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

desviar (-k | -u) --pid [PID1 [, PID2 [, ...]]] [OPÇÕES]
Remove uma ou mais entradas de um rastreador

veja a pista documentação do comando para aprender mais sobre rastreadores LTTng.

A desviar comando remove recursos específicos de um rastreador. Os recursos para
remove deve ter sido adicionado precedentemente pelo pista comando. Também é possível
para remover todos os recursos da lista de permissões usando o --tudo opção.

A partir desta versão, o único rastreador disponível é o PID perseguidor.

Uma operação comum é criar uma sessão de rastreamento, remover todas as entradas de
a lista de permissões do rastreador PID, inicie o rastreamento e, em seguida, rastreie manualmente os PIDs enquanto
o rastreamento está ativo.

Suponha que o PID máximo seja 7 para os seguintes exemplos:

$ lttng criar

Lista de permissões inicial: [0] [1] [2] [3] [4] [5] [6] [7]

$ lttng untrack --userspace --pid --all

Lista de permissões: [] [] [] [] [] [] [] []

$ lttng enable-event --userspace ...
$ lttng início
...
$ lttng faixa --userspace --pid 3,5

Lista de permissões: [] [] [] [3] [] [5] [] []

$ lttng faixa --userspace --pid 2

Lista de permissões: [] [] [2] [3] [] [5] [] []

veja a pista documentação do comando para obter mais detalhes sobre como adicionar entradas.

OPÇÕES:

-sim, --sessão NOME
Aplicar ao nome da sessão.

-k, --núcleo
Aplique ao rastreador de kernel.

-você, --espaço do usuário
Aplicar ao rastreador de espaço do usuário.

-p, --pid [PIDS]
Pare de rastrear IDs de processo PIDS (remova da lista de permissões).

PIDS é uma lista separada por vírgulas de PIDs para remover do rastreador PID.

O argumento PIDS deve ser omitido ao usar também o --tudo opção.

-uma, --tudo
Usado em conjunto com um vazio --pid opção: interromper o rastreamento de todo o processo
IDs (remover todas as entradas da lista de permissões).

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

versão
Mostrar informações de versão

OPÇÕES:

-h, --Socorro
Mostra um resumo das opções e comandos possíveis.

--list-opções
Lista simples de opções

view [SESSION_NAME] [OPÇÕES]
Visualize os rastros de uma sessão de rastreamento. Por padrão, o visualizador do babeltrace será usado
para visualização de texto. Se SESSION_NAME for omitido, o nome da sessão será obtido do
arquivo .lttngrc.

OPÇÕES:

-h, --Socorro
Mostre esta ajuda

--list-opções
Lista simples de opções

-t, --trace-caminho PATH
Rastreie o caminho do diretório para o visualizador

-e --visualizador CMD
Especifique o visualizador e / ou as opções a serem usadas Isso substituirá completamente o
visualizadores padrão, portanto, certifique-se de especificar o comando completo. O traço
o caminho do diretório da sessão será anexado no final aos argumentos

JUL / LOG4J DOMÍNIO


Esta seção explica o domínio JUL e LOG4J em que JUL significa Java Util Logging. Vocês
pode usá-los usando o liblttng-ust- -jni.so do lttng-ust(3) projeto.

O Agente LTTng Java usa JNI para vincular o rastreador UST ao aplicativo Java que usa o
agente. Portanto, ele se comporta de forma semelhante ao domínio UST (-u). Ao habilitar eventos, você habilita
um nome de Logger que será mapeado para um ponto de rastreamento UST padrão chamado
lttng_jul: _evento no lttng_ _canal. Usando a API lttng-ctl, qualquer
Os eventos JUL / LOG4J devem usar o tipo de evento tracepoint (igual a --tracepoint).

Por causa do canal imutável padrão, o habilitar canal comando NÃO PODE ser usado com
o domínio JUL e LOG4J não tendo assim opções.

Além disso, níveis de log são suportados. Usar lttng habilitar evento -h para listá-los. Caracteres curinga NÃO são
suportado, exceto o "*" que significa todos os eventos (o mesmo que -a).

Exatamente como o domínio UST, se o aplicativo Java tiver o mesmo UID que você, você pode
Rastreá-lo. O mesmo vale para o grupo de rastreamento que acessa os aplicativos raiz.

Finalmente, você pode listar todos os nomes de Logger que estão disponíveis nos aplicativos registrados para
o daemon de sessão usando lttng Lista -j or -l.

Aqui está um exemplo de como usar o domínio JUL.

$ lista lttng -j
[...]
$ lttng criar uma sessão
$ lttng enable-event -s aSession -j MyCustomLoggerName
$ lttng início

Mais informações podem ser encontradas na documentação lttng-ust, consulte java-util-logging.txt

SAIR VALORES


Em caso de sucesso, 0 é retornado e um valor positivo em erro. O valor 1 significa um erro de comando,
2 um comando indefinido, 3 um erro fatal e 4 um aviso de comando que significa que algo
deu errado durante o comando.

Qualquer outro valor acima de 10, consulte para uma lista detalhada ou use
lttng_strerror () para obter uma string legível por humanos do código de erro.

MEIO AMBIENTE VARIÁVEIS


Observe que todas as opções da linha de comando substituem as variáveis ​​de ambiente.

LTTNG_SESSIOND_PATH
Permite especificar o caminho binário do daemon de sessão completa para a linha de comando lttng
ferramenta. Você também pode usar a opção --sessiond-path tendo o mesmo efeito.

LTTNG_SESSION_CONFIG_XSD_PATH
Defina o caminho no qual o sessão.xsd o esquema de configuração da sessão pode ser encontrado.

Use lttng online usando serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

Comandos Linux

Ad