Este é o comando pegasus-monitord 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 Windows online ou emulador MAC OS online
PROGRAMA:
NOME
pegasus-monitord - acompanha o andamento do fluxo de trabalho, extraindo informações
SINOPSE
pégaso-monitord [--Socorro|-Socorro] [--verbose|-v]
[--ajustar|-a i] [--primeiro plano|-N]
[--no-daemon|-n] [--trabalho|-j jobstate.log lima]
[--registro|-l arquivo de log] [--conf Propriedades lima]
[--não-recursivo] [--sem banco de dados | --Sem eventos]
[--repetir|-r] [--nenhuma notificação]
[--notificações-máx. max_notificações]
[--notificações-tempo limite tempo limite]
[--sim|-s milisono] [--db-estatísticas]
[--skip-stdout] [--força|-f]
[--tomada] [--diretório de saída | -o dir]
[--destino|-d PATH or URL] [--codificação|-e bp | filho]
DAGMan saída lima
DESCRIÇÃO
Este programa segue um fluxo de trabalho, analisando a saída do arquivo dagman.out do DAGMAN. Dentro
além de gerar o arquivo jobstate.log, pégaso-monitord também pode ser usado o meu
informações do arquivo dag do fluxo de trabalho e arquivos de envio e saída dos trabalhos, e
preencher um banco de dados ou gravar um arquivo de eventos do NetLogger com essas informações.
pégaso-monitord também pode executar notificações ao rastrear o progresso de um fluxo de trabalho em
tempo real.
OPÇÕES
-h, --Socorro
Imprime um resumo de uso com todas as opções de linha de comando disponíveis.
-v, --verbose
Define o nível de registro para pégaso-monitord. Se omitido, o padrão nível será definido para
ATENÇÃO. Quando esta opção é fornecida, o nível de registro é alterado para INFORMACAO. Se esta opção
é repetido, o nível de registro será alterado para DEBUG.
O nível de registro em pégaso-monitord também pode ser ajustado interativamente, enviando o
USR1 e USR2 sinais para o processo, respectivamente para aumentar e diminuir
o nível de log.
-a i, --ajustar i
Para ajustar diferenças de fuso horário por i segundos, o padrão é 0.
-N, --primeiro plano
Não daemonize pégaso-monitord, faça os movimentos como se (Condor).
-n, --no-daemon
Não daemonize pégaso-monitord, mantenha-o em primeiro plano (para depuração).
-j jobstate.log lima, --trabalho jobstate.log lima
Localização alternativa para o jobstate.log Arquivo. O padrão é escrever um jobstate.log
no diretório de fluxo de trabalho. Um nome de arquivo absoluto só deve ser usado se o fluxo de trabalho
não tem nenhum subfluxo de trabalho, pois cada subfluxo de trabalho gerará seu próprio
jobstate.log Arquivo. Se um nome de arquivo alternativo, não absoluto, for fornecido com este
opção, pégaso-monitord criará um arquivo em cada fluxo de trabalho (e subfluxo de trabalho)
diretório com o nome do arquivo fornecido pelo usuário com esta opção. Se um absoluto
o nome do arquivo for fornecido e os subfluxos de trabalho forem encontrados, uma mensagem de aviso será impressa
e pégaso-monitord não rastreará nenhum subfluxo de trabalho.
--registro arquivo de log, --arquivo de log arquivo de log
Especifica uma alternativa arquivo de log para usar em vez do monitorado.log arquivo no principal
diretório de fluxo de trabalho. Diferentemente do jobstate.log arquivo acima, pégaso-monitord
só gera um arquivo de log por execução (e não um por fluxo de trabalho e subfluxo de trabalho
faixas).
--conf propriedades_arquivo
é um arquivo alternativo que contém propriedades no chave = valor formato e permite aos usuários
para substituir os valores lidos do braindump.txt Arquivo. Esta opção tem precedência sobre
o arquivo de propriedades especificado no braindump.txt Arquivo. Por favor, note que estes
as propriedades serão aplicadas não apenas ao fluxo de trabalho principal, mas também a todos os subfluxos de trabalho
encontrado.
--não-recursivo
Esta opção desativa pégaso-monitord para seguir automaticamente qualquer subfluxo de trabalho que
são encontrados.
--nodatabase, --sem banco de dados, --Sem eventos
Desativa a geração de eventos (quando esta opção é fornecida, pégaso-monitord Irá apenas
gerar o arquivo jobstate.log). O padrão é registrar automaticamente as informações em um
Banco de dados SQLite (veja o --destino opção abaixo para mais detalhes). Esta opção substitui
qualquer parâmetro fornecido pelo --destino opção.
-r, --repetir
Esta opção é usada para reproduzir a saída de um fluxo de trabalho já concluído. Deveria
ser usado somente após a conclusão do fluxo de trabalho (não necessariamente com êxito). Se um
jobstate.log arquivo for encontrado, ele será girado. No entanto, ao usar um banco de dados, todos
referências anteriores a esse fluxo de trabalho (e todos os seus subfluxos de trabalho) serão apagadas do
isto. Ao enviar para um arquivo bp, o arquivo será excluído. Ao executar no replay
Modo, pégaso-monitord sempre será executado com o --no-daemon opção, e quaisquer erros
será enviada diretamente para o terminal. Além disso, pégaso-monitord não processará nenhum
notificações durante o modo de reprodução.
--nenhuma notificação
Esta opção desativa notificações completamente, tornando pégaso-monitord ignorar todos os
.notify arquivos para todos os fluxos de trabalho que acompanha.
--notificações-máx. max_notificações
Esta opção define o número máximo de notificações simultâneas que pégaso-monitord
vai começar. Quando o max_notificações limite é atingido, pégaso-monitord vai fazer fila
notificações e aguarde a conclusão de um script de notificação pendente antes de iniciar um
novo. Se max_notificações for definido como 0, as notificações serão desativadas.
--notificações-tempo limite tempo limite
Normalmente, pégaso-monitord irá iniciar um script de notificação e esperar indefinidamente por
para terminar. Esta opção permite que os usuários configurem um máximo tempo limite que
pégaso-monitord irá aguardar a conclusão de um script de notificação antes de encerrá-lo.
Se os scripts de notificação não terminarem em um período de tempo razoável, isso pode causar
outros scripts de notificação devem ser enfileirados devido ao número máximo de simultâneos
scripts permitidos por pégaso-monitord. Além disso, até que todos os scripts de notificação
terminar, pégaso-monitord não vai terminar.
-s milisono, --sim milisono
Esta opção simula atrasos entre leituras, dormindo milisono milissegundos. Isto
opção é usada principalmente por desenvolvedores.
--db-estatísticas
Esta opção faz com que o módulo de banco de dados colete e imprima estatísticas de banco de dados no
fim da execução. Não tem efeito se o --sem banco de dados opção é fornecida.
--skip-stdout
Esta opção causa pégaso-monitord não preencher o stdout e o stderr dos jobs no
Arquivo BP ou banco de dados Stampede. Deve ser usado para evitar o aumento do banco de dados
tamanho substancialmente nos casos em que as tarefas são muito prolixo em sua saída.
-f, --força
Esta opção causa pégaso-monitord pular a verificação de outra instância de si mesmo
já em execução no mesmo diretório de fluxo de trabalho. O comportamento padrão impede dois ou
mais pégaso-monitord instâncias sejam iniciadas e executadas simultaneamente (o que
fazer com que o arquivo bp e o banco de dados sejam deixados em um estado instável). Esta opção deve
não pode ser usado quando o usuário conhece a instância anterior de pégaso-monitord is NÃO
correndo mais.
--tomada
Esta opção causa pégaso-monitord para iniciar uma interface de socket que pode ser usada para
depuração avançada. O número da porta para se conectar a pégaso-monitord pode ser encontrada em
da monitorado.meia arquivo no diretório de fluxo de trabalho (o arquivo é excluído quando
pégaso-monitord acabamentos). Se ainda não foi iniciado, a interface de soquete também é
criado quando pégaso-monitord recebe um USR1 sinal.
-o dir, --output-dir dir
Quando esta opção é fornecida, pégaso-monitord irá criar todos os seus arquivos de saída no
diretório especificado por d. Esta opção é útil para permitir que um usuário depure um
fluxo de trabalho em um diretório em que o usuário não tem permissões de gravação. Neste caso, todos
arquivos gerados por pégaso-monitord terá o fluxo de trabalho wf_uuid como um prefixo para que
os arquivos de vários subfluxos de trabalho podem ser colocados no mesmo diretório. Esta opção é
usado principalmente por analisador de pégaso. É importante observar que a localização do
arquivo BP de saída ou banco de dados não é alterado por esta opção e deve ser definido por meio do
--destino opção.
-d URL params, --destino URL params
Esta opção permite que os usuários especifiquem o destino para os eventos de log gerados por
pégaso-monitord. Se esta opção for omitida, pégaso-monitord irá criar um SQLite
banco de dados no diretório de execução do fluxo de trabalho com o mesmo nome do fluxo de trabalho, mas com
a .tampede.db prefixo. Para um vazio esquema, params são um caminho de arquivo com - significado
saída padrão. Para x-tcp esquema, params e guarante que os mesmos estão TCP_host [: porta = 14380]. Para um banco de dados
esquema, params são um SQLAlchemy motor URL com uma string de conexão de banco de dados que pode
ser usado para especificar diferentes mecanismos de banco de dados. Por favor, veja a seção de exemplos abaixo
para obter mais informações sobre como usar esta opção. Observe que ao usar um mecanismo de banco de dados
exceto sqlite, os drivers de banco de dados Python necessários precisarão ser instalados.
-e codificação, --codificação codificação
Esta opção especifica como codificar eventos de log. As duas possibilidades disponíveis são bp
e filho. Se esta opção não for especificada, os eventos serão gerados no bp formato.
DAGMan_output_file
A DAGMan_output_file é o único argumento de linha de comando requerido em pégaso-monitord
e deve ter o .dag.dagman.out extensão.
RETORNO VALOR
Se o plano pudesse ser construído, pégaso-monitord retorna com um código de saída 0.
No entanto, em caso de erro, um código de saída diferente de zero indica problemas. Nesse caso, o
arquivo de log deve conter informações adicionais sobre a condição de erro.
MEIO AMBIENTE VARIÁVEIS
pégaso-monitord não requer que nenhuma variável ambiental seja definida. Localiza seu
módulos Python necessários com base em sua própria localização e, portanto, não devem ser movidos
fora do diretório bin da Pegasus.
EXEMPLOS
Geralmente, pégaso-monitord é invocado automaticamente por corrida pegasus e rastreia o fluxo de trabalho
progresso em tempo real, produzindo o jobstate.log arquivo e um SQLite correspondente
base de dados. Quando um fluxo de trabalho falha e é reenviado com um DAG de resgate, pégaso-monitord
irá automaticamente retomar de onde parou anteriormente e continuar o jobstate.log
arquivo e o banco de dados.
Se os usuários precisarem criar o jobstate.log arquivo após a conclusão de um fluxo de trabalho, o
--repetir | -r opção deve ser usada ao executar pégaso-monitord manualmente. Por exemplo:
$ pegasus_monitord -r diamante-0.dag.dagman.out
lançará pégaso-monitord no modo de repetição. Neste caso, se um jobstate.log arquivo já
existir, ele será girado e um novo arquivo será criado. Se um diamante-0.carimbo.db
O banco de dados SQLite já existe, pégaso-monitord irá limpar todas as referências ao fluxo de trabalho
id especificado no braindump.txt arquivo, incluindo todos os subfluxos de trabalho associados a esse
id do fluxo de trabalho.
$ pegasus_monitord -r --no-database diamante-0.dag.dagman.out
fará a mesma coisa, mas sem gerar eventos de log.
$ pegasus_monitord -r --dest `pwd` / diamond-0.bp diamond-0.dag.dagman.out
irá criar o arquivo diamante-0.bp no diretório atual, contendo eventos NetLogger
com todos os dados do fluxo de trabalho. Isso é um acréscimo ao jobstate.log arquivo.
Para usar um banco de dados, os usuários devem fornecer uma string de conexão de banco de dados no formato de:
dialeto: // nome de usuário: senha @ host: porta / banco de dados
Onde dialeto é o nome do driver subjacente (mysql, sqlite, oráculo, postgres) e
banco de dados é o nome do banco de dados em execução no servidor no hospedeiro computador.
Se os usuários quiserem usar um diferente SQLite base de dados, pégaso-monitord exige que eles
especifique o caminho absoluto do arquivo alternativo. Por exemplo:
$ pegasus_monitord -r --dest sqlite: ////home/user/diamond_database.db diamond-0.dag.dagman.out
Aqui estão os documentos com detalhes para todos os drivers suportados:
http://www.sqlalchemy.org/docs/05/reference/dialects/index.html
Opções adicionais por banco de dados que funcionam nas cadeias de conexão são descritas aqui.
É importante notar que é necessário ter a biblioteca de interface db apropriada
instalado. O que quer dizer, SQLAlchemy é um wrapper em torno da biblioteca de interface mysql
(por exemplo), não fornece um MySQL próprio motorista. O Pegasus distribuição
inclui ambos SQLAlchemy e os votos de SQLite Driver Python.
Como uma nota final, é importante mencionar que, ao contrário de quando se usa SQLite bancos de dados, usando
SQLAlchemy com outros servidores de banco de dados, por exemplo MySQL or postgres, o banco de dados de destino precisa
existir. Portanto, se um usuário quiser se conectar a:
mysql: // pegasus-user: supersecret @ localhost: localport / diamond
seria necessário primeiro se conectar ao servidor em localhost e emitir a criação apropriada
comando do banco de dados antes de executar pégaso-monitord as SQLAlchemy cuidará de criar
as tabelas e índices, se ainda não existirem.
Use pegasus-monitord online usando serviços onworks.net