seqcli
O aplicativo de linha de comando do cliente Seq. Suporta registro ( seqcli log
), pesquisa ( search
), tail ( tail
), consulta ( query
) e JSON ou ingestão de arquivo de log de texto simples ( ingest
) e muito mais.
O instalador Seq para Windows inclui seqcli
. Caso contrário, baixe a versão para o seu sistema operacional. Ou, se você tiver dotnet
instalado, seqcli
poderá ser instalado como uma ferramenta global usando:
dotnet tool install --global seqcli
Para definir um URL de servidor padrão e uma chave de API, execute:
seqcli config -k connection.serverUrl -v https://your-seq-server
seqcli config -k connection.apiKey -v your-api-key
A chave API será armazenada em seu arquivo de configuração SeqCli.json
; no Windows, isso é criptografado usando DPAPI; no Mac/Linux, a chave está atualmente armazenada em texto simples. Como alternativa ao armazenamento da chave API na configuração, ela pode ser passada para cada comando por meio do argumento --apikey=
.
seqcli
também está disponível como um contêiner Docker em datalust/seqcli
:
docker run --rm datalust/seqcli:latest []
Para conectar-se ao Seq em um contêiner docker na máquina local, use o endereço IP da máquina (não localhost) ou especifique a rede do docker host com --net host
.
Use redes e volumes Docker para tornar arquivos locais e outros contêineres acessíveis ao seqcli
dentro de seu contêiner.
Cada valor de configuração pode ser substituído em tempo de execução especificando uma variável de ambiente no formato SEQCLI_
, onde contém um elemento para cada segmento pontilhado do nome da configuração, separado por sublinhados.
Por exemplo, a configuração connection.serverUrl
pode ser substituída pela variável SEQCLI_CONNECTION_SERVERURL
.
Se você estiver automatizando a configuração do Seq, é provável que ainda não tenha uma chave de API para usar seqcli
. Durante a configuração inicial do servidor Seq, é possível especificar firstRun.adminUsername
e firstRun.adminPasswordHash
(ou as variáveis de ambiente equivalentes SEQ_FIRSTRUN_ADMINUSERNAME
e SEQ_FIRSTRUN_ADMINPASSWORDHASH
) para configurar um nome de usuário e uma senha iniciais para a conta do administrador. Você pode usá-los para criar uma chave de API e, em seguida, usar o token de chave de API com os comandos seqcli
restantes.
O comando seqcli apikey create
aceita --connect-username
e --connect-password-stdin
e imprime o novo token de chave API em STDOUT
(a sintaxe do PowerShell é usada abaixo):
$user = "admin"
$pw = "thepassword"
$token = (
echo $pw |
seqcli apikey create `
-t CLI `
--permissions="Read,Write,Project,Organization,System" `
--connect-username $user --connect-password-stdin
)
Consulte CONTRIBUTING.md
.
Ao conectar-se com uma chave de API, as operações permitidas são determinadas pelas permissões atribuídas a essa chave de API.
Para determinar a permissão necessária para um comando, verifique a coluna 'Exigência de permissão' da operação equivalente da API do servidor. Por exemplo, o comando apikey create
usa o endpoint POST api/apikeys
, que requer a permissão Write
.
Todos os comandos seqcli
seguem o mesmo padrão:
seqcli []
A lista completa de comandos suportados pode ser visualizada executando:
seqcli help
Para mostrar informações de uso de um comando específico, execute seqcli help
, por exemplo:
seqcli help apikey create
Isto também funciona para grupos de comando; para listar todos os subcomandos apikey
, execute:
seqcli help apikey
apikey
apikey create
— Crie uma chave de API para automação ou ingestão.apikey list
— Lista as chaves de API disponíveis.apikey remove
— Remova uma chave de API do servidor.apikey update
— Atualize uma chave de API existente.app
app define
— Gere uma definição de aplicativo para um plug-in .NET [SeqApp]
.app install
— Instale um pacote de aplicativo.app list
— Lista pacotes de aplicativos instalados.app run
– hospede um plug-in .NET [SeqApp]
.app uninstall
— Desinstale um pacote de aplicativo.app update
— Atualize um pacote de aplicativo instalado.appinstance
appinstance create
— Crie uma instância de um aplicativo instalado.appinstance list
— Lista instâncias de aplicativos instalados.appinstance remove
— Remove uma instância de aplicativo do servidor.appinstance update
— Atualize uma instância de aplicativo existente.bench
– Meça o desempenho da consulta.config
— Visualize e defina campos no arquivo SeqCli.json
; execute sem argumentos para listar todos os campos.dashboard
dashboard list
— Lista painéis.dashboard remove
— Remova um painel do servidor.dashboard render
— Produza um conjunto de resultados CSV ou JSON a partir de um gráfico do painel.expressionindex
expressionindex create
— Crie um índice de expressão.expressionindex list
— Lista índices de expressões.expressionindex remove
— Remove um índice de expressão do servidor.feed
feed create
— Crie um feed NuGet.feed list
— Lista feeds do NuGet.feed remove
— Remova um feed NuGet do servidor.feed update
— Atualize um feed NuGet existente.help
— Mostra informações sobre os comandos disponíveis.index
index list
— Lista índices.index suppress
— Suprime um índice.ingest
— Envie eventos de log de um arquivo ou STDIN
.license apply
— Aplique uma licença ao servidor Seq.log
— Envie um evento de log estruturado para o servidor.node
node demote
— Inicia o rebaixamento do nó líder atual.node health
— Teste o endpoint /health
de um nó Seq e imprima o código de status HTTP retornado ou 'Inacessível' se o endpoint não puder ser consultado.node list
— lista os nós no cluster Seq.print
— Imprime eventos em formato CLEF/JSON, de um arquivo ou STDIN
.profile
profile create
— Crie ou substitua um perfil de conexão.profile list
— Lista perfis de conexão.profile remove
— Remova um perfil de conexão.query
— Execute uma consulta SQL e receba resultados em formato CSV.retention
retention create
— Crie uma política de retenção.retention list
— Lista políticas de retenção.retention remove
— Remova uma política de retenção do servidor.retention update
— Atualize uma política de retenção existente.sample
sample ingest
— Registra eventos de amostra em uma instância do Seq.sample setup
— Configure uma instância do Seq com painéis de amostra, sinais, usuários e assim por diante.search
— Recupera eventos de log que correspondem a um determinado filtro.setting
setting clear
— Limpa uma configuração de servidor configurável em tempo de execução.setting names
— Imprima os nomes de todas as configurações suportadas.setting set
— Altere uma configuração de servidor configurável em tempo de execução.setting show
— Imprime o valor atual de uma configuração de servidor configurável em tempo de execução.signal
signal create
— Crie um sinal.signal import
— Importe sinais em formato JSON delimitado por nova linha.signal list
— Lista os sinais disponíveis.signal remove
— Remove um sinal do servidor.signal update
— Atualize um sinal existente.tail
— Transmita eventos de log que correspondem a um filtro.template
template export
— Exporte entidades para arquivos de modelo.template import
— Importe entidades de arquivos de modelo.user
user create
— Crie um usuário.user list
— Lista usuários.user remove
— Remove um usuário do servidor.user update
— Atualize um usuário existente.version
— Imprime a versão executável atual.workspace
workspace create
— Crie um espaço de trabalho.workspace list
— Lista os espaços de trabalho disponíveis.workspace remove
— Remova um espaço de trabalho do servidor.workspace update
— Atualize um espaço de trabalho existente.apikey create
Crie uma chave de API para automação ou ingestão.
Exemplo:
seqcli apikey create -t 'Test API Key' -p Environment=Test
Opção | Descrição |
---|---|
-t , --title=VALUE | Um título para a chave API |
--token=VALUE | Um token de chave de API pré-alocado; por padrão, um novo token será gerado e gravado em STDOUT |
-p , --property=NAME=VALUE | Especifique propriedades de nome/valor, por exemplo -p Customer=C123 -p Environment=Production |
--filter=VALUE | Um filtro para aplicar aos eventos recebidos |
--minimum-level=VALUE | O nível/gravidade mínimo do evento a ser aceito; o padrão é aceitar todos os eventos |
--use-server-timestamps | Descarte os carimbos de data/hora fornecidos pelo cliente e use os valores do relógio do servidor |
--permissions=VALUE | Uma lista separada por vírgulas de permissões para delegar à chave de API; permissões válidas são Ingest (padrão), Read , Write , Project e System |
--connect-username=VALUE | Um nome de usuário para se conectar, útil principalmente ao configurar a primeira chave de API; servidores com assinatura 'Individual' permitem apenas uma solicitação simultânea com esta opção |
--connect-password=VALUE | Quando connect-username é especificado, uma senha correspondente |
--connect-password-stdin | Quando connect-username for especificado, leia a senha correspondente em STDIN |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
apikey list
Liste as chaves de API disponíveis.
Exemplo:
seqcli apikey list
Opção | Descrição |
---|---|
-t , --title=VALUE | O título das chaves de API a serem listadas |
-i , --id=VALUE | O ID de uma única chave de API a ser listada |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
apikey remove
Remova uma chave de API do servidor.
Exemplo:
seqcli apikey remove -t 'Test API Key'
Opção | Descrição |
---|---|
-t , --title=VALUE | O título das chaves de API a serem removidas |
-i , --id=VALUE | O ID de uma única chave de API a ser removida |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
apikey update
Atualize uma chave de API existente.
Exemplo:
seqcli apikey update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | A chave de API atualizada no formato JSON; isso pode ser produzido usando seqcli apikey list --json |
--json-stdin | Leia a chave de API atualizada como JSON do STDIN |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
app define
Gere uma definição de aplicativo para um plug-in .NET [SeqApp]
.
Exemplo:
seqcli app define -d "./bin/Debug/netstandard2.2"
Opção | Descrição |
---|---|
-d , --directory=VALUE | O diretório que contém os assemblies do .NET Standard; o padrão é o diretório atual |
--type=VALUE | O nome do tipo de plug-in [SeqApp]; o padrão é verificar assemblies para um único tipo marcado com este atributo |
--indented | Formate a definição em várias linhas com recuo |
app install
Instale um pacote de aplicativo.
Exemplo:
seqcli app install --package-id 'Seq.App.JsonArchive'
Opção | Descrição |
---|---|
--package-id=VALUE | O ID do pacote do aplicativo a ser instalado |
--version=VALUE | A versão do pacote a ser instalado; o padrão é instalar a versão mais recente |
--feed-id=VALUE | O ID do feed do NuGet do qual instalar o pacote; pode ser omitido se apenas um feed estiver configurado |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
app list
Listar pacotes de aplicativos instalados.
Exemplo:
seqcli app list
Opção | Descrição |
---|---|
--package-id=VALUE | O ID do pacote dos aplicativos a serem listados |
-i , --id=VALUE | O ID de um único aplicativo a ser listado |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
app run
Hospede um plug-in .NET [SeqApp]
.
Exemplo:
seqcli tail --json | seqcli app run -d "./bin/Debug/netstandard2.2" -p [email protected]
Opção | Descrição |
---|---|
-d , --directory=VALUE | O diretório que contém os assemblies do .NET Standard; o padrão é o diretório atual |
--type=VALUE | O nome do tipo de plug-in [SeqApp]; o padrão é verificar assemblies para um único tipo marcado com este atributo |
-p , --property=NAME=VALUE | Especifique as configurações de nome/valor para o aplicativo, por exemplo -p [email protected] -p Subject="Alert!" |
--storage=VALUE | Um diretório no qual dados específicos do aplicativo podem ser armazenados; o padrão é o diretório atual |
-s , --server=VALUE | A URL do servidor Seq, usada apenas para configuração do aplicativo (nenhuma conexão é feita com o servidor); por padrão, o valor connection.serverUrl será usado |
--server-instance=VALUE | O nome da instância do servidor Seq, usado apenas para configuração do aplicativo; o padrão é nenhum nome de instância |
-t , --title=VALUE | O título da instância do aplicativo, usado somente para configuração do aplicativo; o padrão é um título de espaço reservado. |
--id=VALUE | O ID da instância do aplicativo, usado apenas para configuração do aplicativo; o padrão é um ID de espaço reservado. |
--read-env | Leia a configuração e as configurações do aplicativo a partir de variáveis de ambiente, conforme especificado em https://docs.datalust.co/docs/seq-apps-in-other-languages; ignora todas as opções exceto --directory e --type |
app uninstall
Desinstale um pacote de aplicativos.
Exemplo:
seqcli app uninstall --package-id 'Seq.App.JsonArchive'
Opção | Descrição |
---|---|
--package-id=VALUE | O ID do pacote do aplicativo a ser desinstalado |
-i , --id=VALUE | O ID de um único pacote de aplicativo a ser desinstalado |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
app update
Atualize um pacote de aplicativo instalado.
Exemplo:
seqcli app update -n 'HTML Email'
Opção | Descrição |
---|---|
-i , --id=VALUE | O ID de um único aplicativo instalado para atualizar |
-n , --name=VALUE | O nome do aplicativo instalado para atualizar |
--all | Atualize todos os aplicativos instalados; não é compatível com -i ou -n |
--version=VALUE | A versão do pacote para a qual atualizar; o padrão é atualizar para a versão mais recente no feed associado |
--force | Atualize o aplicativo mesmo que a versão de destino já esteja instalada |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
appinstance create
Crie uma instância de um aplicativo instalado.
Exemplo:
seqcli appinstance create -t 'Email Ops' --app hostedapp-314159 -p [email protected]
Opção | Descrição |
---|---|
-t , --title=VALUE | Um título para a instância do aplicativo |
--app=VALUE | O ID do pacote de aplicativos instalado para instanciar |
-p , --property=NAME=VALUE | Especifique as configurações de nome/valor para o aplicativo, por exemplo -p [email protected] -p Subject="Alert!" |
--stream[=VALUE] | Transmita eventos recebidos para esta instância do aplicativo à medida que são ingeridos; opcionalmente aceita uma expressão de sinal limitando quais eventos devem ser transmitidos, por exemplo signal-1,signal-2 |
--overridable=VALUE | Especifique nomes de configurações que podem ser substituídos pelos usuários ao invocar o aplicativo |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
appinstance list
Listar instâncias de aplicativos instalados.
Exemplo:
seqcli appinstance list
Opção | Descrição |
---|---|
-t , --title=VALUE | O título das instâncias do aplicativo a serem listadas |
-i , --id=VALUE | O ID de uma única instância de aplicativo a ser listada |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
appinstance remove
Remova uma instância de aplicativo do servidor.
Exemplo:
seqcli appinstance remove -t 'Email Ops'
Opção | Descrição |
---|---|
-t , --title=VALUE | O título das instâncias do aplicativo a serem removidas |
-i , --id=VALUE | O ID de uma única instância de aplicativo a ser removida |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
appinstance update
Atualize uma instância de aplicativo existente.
Exemplo:
seqcli appinstance update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | A instância do aplicativo atualizada no formato JSON; isso pode ser produzido usando seqcli appinstance list --json |
--json-stdin | Leia a instância do aplicativo atualizada como JSON do STDIN |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
bench
Meça o desempenho da consulta.
Opção | Descrição |
---|---|
-r , --runs=VALUE | O número de execuções a serem executadas; o padrão é 10 |
-c , --cases=VALUE | Um arquivo JSON contendo o conjunto de casos a serem executados. O padrão é um conjunto padrão de casos. |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--start=VALUE | Data/hora ISO 8601 para consulta de |
--end=VALUE | Data/hora ISO 8601 para consulta |
--reporting-server=VALUE | O endereço de um servidor Seq para enviar resultados de bancada |
--reporting-apikey=VALUE | A chave de API a ser usada ao conectar-se ao servidor de relatórios |
--description=VALUE | Descrição opcional do teste de bancada |
--with-ingestion | O benchmark deve incluir o envio de eventos para Seq |
--with-queries | O benchmark deve incluir a consulta de Seq |
config
Visualize e defina campos no arquivo SeqCli.json
; execute sem argumentos para listar todos os campos.
Opção | Descrição |
---|---|
-k , --key=VALUE | O campo, por exemplo connection.serverUrl |
-v , --value=VALUE | O valor do campo; se não for especificado, o comando imprimirá o valor atual |
-c , --clear | Limpe o campo |
dashboard list
Listar painéis.
Exemplo:
seqcli dashboard list
Opção | Descrição |
---|---|
-t , --title=VALUE | O título dos painéis a serem listados |
-i , --id=VALUE | O ID de um único painel a ser listado |
-o , --owner=VALUE | O ID do usuário para o qual listar os painéis; por padrão, os painéis compartilhados são listados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
dashboard remove
Remova um painel do servidor.
Exemplo:
seqcli dashboard remove -i dashboard-159
Opção | Descrição |
---|---|
-t , --title=VALUE | O título dos painéis a serem removidos |
-i , --id=VALUE | O ID de um único painel a ser removido |
-o , --owner=VALUE | O ID do usuário do qual remover os painéis; por padrão, os painéis compartilhados são removidos |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
dashboard render
Produza um conjunto de resultados CSV ou JSON a partir de um gráfico de painel.
Exemplo:
seqcli dashboard render -i dashboard-159 -c 'Response Time (ms)' --last 7d --by 1h
Opção | Descrição |
---|---|
-i , --id=VALUE | O ID de um único painel a ser renderizado |
-c , --chart=VALUE | O título de um gráfico no painel a ser renderizado |
--last=VALUE | Uma duração durante a qual o gráfico deve ser renderizado, por exemplo, 7d ; isso será alinhado a um limite de intervalo; ou --last ou --start e --end devem ser especificados |
--by=VALUE | O intervalo de tempo para os dados do gráfico, como duração, por exemplo, 1h |
--start=VALUE | Data/hora ISO 8601 para consulta de |
--end=VALUE | Data/hora ISO 8601 para consulta |
--signal=VALUE | Uma expressão de sinal ou lista de IDs de sinal cruzados a serem aplicados, por exemplo signal-1,signal-2 |
--timeout=VALUE | O tempo limite de execução em milissegundos |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
expressionindex create
Crie um índice de expressão.
Exemplo:
seqcli expressionindex create --expression "ServerName"
Opção | Descrição |
---|---|
-e , --expression=VALUE | A expressão a indexar |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
expressionindex list
Listar índices de expressão.
Exemplo:
seqcli expressionindex list
Opção | Descrição |
---|---|
-i , --id=VALUE | O id de um único índice de expressão a ser listado |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
expressionindex remove
Remova um índice de expressão do servidor.
Exemplo:
seqcli expressionindex -i expressionindex-2529
Opção | Descrição |
---|---|
-i , --id=VALUE | O id de um índice de expressão a ser removido |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
feed create
Crie um feed NuGet.
Exemplo:
seqcli feed create -n 'CI' --location="https://f.feedz.io/example/ci" -u Seq --password-stdin
Opção | Descrição |
---|---|
-n , --name=VALUE | Um nome exclusivo para o feed |
-l , --location=VALUE | O local da alimentação; este pode ser um URL de feed do NuGet v2 ou v3 ou um caminho do sistema de arquivos local no servidor Seq |
-u , --username=VALUE | O nome de usuário Seq deve ser fornecido ao conectar-se ao feed, se a autenticação for necessária |
-p , --password=VALUE | Uma senha de feed, se for necessária autenticação; observe que --password-stdin é mais seguro |
--password-stdin | Leia a senha do feed do STDIN |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
feed list
Listar feeds do NuGet.
Exemplo:
seqcli feed list
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome do feed a ser listado |
-i , --id=VALUE | O ID de um único feed a ser listado |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
feed remove
Remova um feed NuGet do servidor.
Exemplo:
seqcli feed remove -n CI
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome do feed a ser removido |
-i , --id=VALUE | O ID de um único feed a ser removido |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
feed update
Atualize um feed NuGet existente.
Exemplo:
seqcli feed update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | O feed NuGet atualizado no formato JSON; isso pode ser produzido usando seqcli feed list --json |
--json-stdin | Leia o feed NuGet atualizado como JSON do STDIN |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
help
Mostrar informações sobre os comandos disponíveis.
Exemplo:
seqcli help search
Opção | Descrição |
---|---|
-m , --markdown | Gerar descontos para uso na documentação |
index list
Listar índices.
Exemplo:
seqcli index list
Opção | Descrição |
---|---|
-i , --id=VALUE | O id de um único índice a ser listado |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
index suppress
Suprimir um índice.
Exemplo:
seqcli index suppress -i index-2191448f1d9b4f22bd32c6edef752748
Opção | Descrição |
---|---|
-i , --id=VALUE | O id de um índice a ser suprimido |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
ingest
Envie eventos de log de um arquivo ou STDIN
.
Exemplo:
seqcli ingest -i log-*.txt --json --filter="@Level <> 'Debug'" -p Environment=Test
Opção | Descrição |
---|---|
-i , --input=VALUE | Arquivo(s) a serem ingeridos, incluindo o curinga * ; se não for especificado, STDIN será usado |
--invalid-data=VALUE | Especifique como os dados inválidos são tratados: fail (padrão) ou ignore |
-p , --property=NAME=VALUE | Especifique propriedades de nome/valor, por exemplo -p Customer=C123 -p Environment=Production |
-x , --extract=VALUE | Um padrão de extração a ser aplicado a logs de texto simples (ignorado quando --json é especificado) |
--json | Leia os eventos como JSON (o padrão assume texto simples) |
-f , --filter=VALUE | Expressão de filtro para selecionar um subconjunto de eventos |
-m , --message=VALUE | Uma mensagem para associar aos eventos ingeridos; A sintaxe https://messagetemplates.org é suportada |
-l , --level=VALUE | O nível ou gravidade a ser associado aos eventos ingeridos; isso substituirá qualquer informação de nível presente nos próprios eventos |
--send-failure=VALUE | Especifique como as falhas de conexão são tratadas: fail (padrão), retry , continue ou ignore |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--batch-size=VALUE | O número máximo de eventos a serem enviados em cada solicitação ao endpoint de ingestão; se não for especificado, um valor de 100 será usado |
license apply
Aplique uma licença ao servidor Seq.
Exemplo:
seqcli license apply --certificate="license.txt"
Opção | Descrição |
---|---|
-c , --certificate=VALUE | Arquivo de certificado; o arquivo deve ser texto UTF-8 |
--certificate-stdin | Leia o certificado de licença do STDIN |
--automatically-refresh | Se a licença for por assinatura, verifique periodicamente datalust.co e atualize automaticamente o certificado quando a assinatura for alterada ou renovada |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
log
Envie um evento de log estruturado para o servidor.
Exemplo:
seqcli log -m 'Hello, {Name}!' -p Name=World -p App=Test
Opção | Descrição |
---|---|
-m , --message=VALUE | Uma mensagem para associar ao evento (o padrão é não enviar nenhuma mensagem); A sintaxe https://messagetemplates.org é suportada |
-l , --level=VALUE | O nível ou gravidade do evento (o padrão é Information ) |
-t , --timestamp=VALUE | O carimbo de data/hora do evento como ISO-8601 (o carimbo de data/hora UTC atual será usado por padrão) |
-x , --exception=VALUE | Exceção adicional ou informações de erro a serem enviadas, se houver |
-p , --property=NAME=VALUE | Especifique propriedades de nome/valor, por exemplo -p Customer=C123 -p Environment=Production |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
node demote
Comece o rebaixamento do nó líder atual.
Exemplo:
seqcli node demote --verbose --wait
Opção | Descrição |
---|---|
--wait | Espere o líder ser rebaixado antes de sair |
-y , --confirm | Responda [y]es quando solicitado a continuar |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
node health
Teste o endpoint /health
de um nó Seq e imprima o código de status HTTP retornado ou 'Inacessível' se o endpoint não puder ser consultado.
Exemplo:
seqcli node health -s https://seq-2.example.com
Opção | Descrição |
---|---|
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
node list
Listar nós no cluster Seq.
Exemplo:
seqcli node list --json
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome do nó do cluster a ser listado |
-i , --id=VALUE | O ID de um único nó do cluster a ser listado |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; por padrão, o valor de configuração connection.serverUrl será usado |
-a , --apikey=VALUE | A chave API a ser usada ao conectar-se ao servidor; por padrão, o valor de configuração connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
print
Imprima eventos em formato CLEF/JSON, de um arquivo ou STDIN
.
Exemplo:
seqcli print -i log-20201028.clef
Opção | Descrição |
---|---|
-i , --input=VALUE | Arquivo CLEF a ser lido, incluindo o curinga * ; se não for especificado, STDIN será usado |
-f , --filter=VALUE | Expressão de filtro para selecionar um subconjunto de eventos |
--template=VALUE | Especifique um modelo de saída para controlar a formatação de texto simples |
--invalid-data=VALUE | Especifique como os dados inválidos são tratados: fail (padrão) ou ignore |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
profile create
Crie ou substitua um perfil de conexão.
Exemplo:
seqcli profile create -n Production -s https://seq.example.com -a th15ISanAPIk3y
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome do perfil de conexão |
-s , --server=VALUE | A URL do servidor Seq |
-a , --apikey=VALUE | A chave de API a ser usada ao conectar-se ao servidor, se necessário |
profile list
Listar perfis de conexão.
Exemplo:
seqcli profile list
profile remove
Remova um perfil de conexão.
Exemplo:
seqcli profile remove -n Production
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome do perfil de conexão a ser removido |
query
Execute uma consulta SQL e receba resultados em formato CSV.
Exemplo:
seqcli query -q "select count(*) from stream group by @Level" --start="2018-02-28T13:00Z"
Opção | Descrição |
---|---|
-q , --query=VALUE | A consulta a ser executada |
--start=VALUE | Data/hora ISO 8601 para consulta de |
--end=VALUE | Data/hora ISO 8601 para consulta |
--signal=VALUE | Uma expressão de sinal ou lista de IDs de sinal cruzados a serem aplicados, por exemplo signal-1,signal-2 |
--timeout=VALUE | O tempo limite de execução em milissegundos |
--json | Imprimir saída em JSON delimitado por nova linha (o padrão é texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Forçar a saída redirecionada para ter cor ANSI (a menos que --no-color também seja especificado) |
-s , --server=VALUE | A URL do servidor Seq; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
retention create
Criar uma política de retenção.
Exemplo:
seqcli retention create --after 30d --delete-all-events
Opção | Descrição |
---|---|
--after=VALUE | Uma duração após a qual a política excluirá eventos, por exemplo, 7d |
--delete-all-events | A política deve excluir todos os eventos (atualmente a única opção suportada) |
--delete=VALUE | Transmitir eventos de entrada para esta instância do aplicativo à medida que são ingeridos; opcionalmente aceita uma expressão de sinal limitando quais eventos devem ser transmitidos |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
retention list
Políticas de retenção de lista.
Exemplo:
seqcli retention list
Opção | Descrição |
---|---|
-i , --id=VALUE | O ID de uma única política de retenção para listar |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
retention remove
Remova uma política de retenção do servidor.
Exemplo:
seqcli retention remove -i retentionpolicy-17
Opção | Descrição |
---|---|
-i , --id=VALUE | O ID de uma única política de retenção para remover |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
retention update
Atualizar uma política de retenção existente.
Exemplo:
seqcli retention update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | A política de retenção atualizada no formato JSON; Isso pode ser produzido usando seqcli retention list --json |
--json-stdin | Leia a política de retenção atualizada como JSON da STDIN |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
sample ingest
Amostra de log em uma instância do SEQ.
Exemplo:
seqcli sample ingest
Opção | Descrição |
---|---|
-y , --confirm | Responda [y] quando solicitado a continuar |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--quiet | Não ecoe eventos ingeridos para STDOUT |
--batch-size=VALUE | O número máximo de eventos para enviar cada solicitação ao terminal de ingestão; se não for especificado, um valor de 100 será usado |
sample setup
Configure uma instância do SEQ com painéis de amostra, sinais, usuários e assim por diante.
Exemplo:
seqcli sample setup
Opção | Descrição |
---|---|
-y , --confirm | Responda [y] quando solicitado a continuar |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
search
Recupere eventos de log que correspondem a um determinado filtro.
Exemplo:
seqcli search -f "@Exception like '%TimeoutException%'" -c 30
Opção | Descrição |
---|---|
-f , --filter=VALUE | Um filtro a ser aplicado à pesquisa, por exemplo, Host = 'xmpweb-01.example.com' |
-c , --count=VALUE | O número máximo de eventos para recuperar; O padrão é 1 |
--start=VALUE | ISO 8601 Data/hora de consultar |
--end=VALUE | ISO 8601 Data/hora de consultar |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
--signal=VALUE | Uma expressão de sinal ou lista de IDs de sinal cruzados para aplicar, por exemplo, signal-1,signal-2 |
--request-timeout=VALUE | O tempo permitiu recuperar cada página de eventos, em milissegundos; O padrão é 100000 |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
setting clear
Limpe uma configuração do servidor configurável por tempo de execução.
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome da configuração, por exemplo, OpenIdConnectClientSecret |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
setting names
Imprima os nomes de todas as configurações suportadas.
setting set
Altere uma configuração do servidor confundível com tempo de execução.
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome da configuração, por exemplo, OpenIdConnectClientSecret |
-v , --value=VALUE | O valor de configuração, separado por vírgula se vários valores forem aceitos |
--value-stdin | Leia o valor de STDIN |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
setting show
Imprima o valor atual de uma configuração do servidor confundível com tempo de execução.
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome da configuração, por exemplo, OpenIdConnectClientSecret |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
signal create
Crie um sinal.
Exemplo:
seqcli signal create -t 'Exceptions' -f "@Exception is not null"
Opção | Descrição |
---|---|
-t , --title=VALUE | Um título para o sinal |
--description=VALUE | Uma descrição para o sinal |
-f , --filter=VALUE | Filtrar para se associar ao sinal |
-c , --column=VALUE | Coluna para se associar ao sinal; Este argumento pode ser usado várias vezes |
--group=VALUE | Um nome de grupo explícito para se associar ao sinal; o padrão é inferir o grupo do filtro |
--no-group | Especifique que nenhum grupo deve ser inferido; o padrão é inferir o grupo do filtro |
--protected | Especifique que o sinal é editável apenas pelos administradores |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
signal import
Sinais de importação em formato JSON delimitado de nova linha.
Exemplo:
seqcli signal import -i ./Exceptions.json
Opção | Descrição |
---|---|
--merge | Atualizar sinais que possuem IDs correspondentes aos dos dados importados; O padrão é sempre criar novos sinais |
-i , --input=VALUE | Arquivo para importar; Se não for especificado, STDIN será usado |
-o , --owner=VALUE | O ID do usuário para importar sinais; Por padrão, os sinais compartilhados são importantes |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
signal list
Listar sinais disponíveis.
Exemplo:
seqcli signal list
Opção | Descrição |
---|---|
-t , --title=VALUE | O título do (s) sinal (s) para listar |
-i , --id=VALUE | O ID de um único sinal para listar |
-o , --owner=VALUE | O ID do usuário para listar sinais; Por padrão, os sinais compartilhados são listados |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
signal remove
Remova um sinal do servidor.
Exemplo:
seqcli signal remove -t 'Test Signal'
Opção | Descrição |
---|---|
-t , --title=VALUE | O título do (s) sinal (s) para remover |
-i , --id=VALUE | O ID de um único sinal para remover |
-o , --owner=VALUE | O ID do usuário para remover sinais; Por padrão, os sinais compartilhados são removidos |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
signal update
Atualize um sinal existente.
Exemplo:
seqcli signal update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | O sinal atualizado no formato JSON; Isso pode ser produzido usando seqcli signal list --json |
--json-stdin | Leia o sinal atualizado como JSON de STDIN |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
tail
Eventos de log de stream que correspondem a um filtro.
Opção | Descrição |
---|---|
-f , --filter=VALUE | Um filtro opcional do lado do servidor para se aplicar ao fluxo, por exemplo, @Level = 'Error' |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
--signal=VALUE | Uma expressão de sinal ou lista de IDs de sinal cruzados para aplicar, por exemplo, signal-1,signal-2 |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
template export
Exportar entidades para arquivos de modelo.
Exemplo:
seqcli template export -o ./Templates
Opção | Descrição |
---|---|
-o , --output=VALUE | O diretório para escrever arquivos de modelo; O diretório deve existir; Quaisquer arquivos existentes com nomes correspondentes aos modelos exportados serão substituídos; o padrão é . |
-i , --include=VALUE | O ID de um sinal, painel, consulta salva, espaço de trabalho ou política de retenção para exportar; Este argumento pode ser especificado várias vezes; O padrão é exportar todas as entidades compartilhadas |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
template import
Importar entidades de arquivos de modelo.
Exemplo:
seqcli template import -i ./Templates
Opção | Descrição |
---|---|
-i , --input=VALUE | O diretório a partir do qual ler o conjunto de arquivos .template ; o padrão é . |
--state=VALUE | O caminho de um arquivo que persistirá um mapeamento de nomes de modelos para os IDs das entidades criadas no servidor de destino, evitando duplicatas quando várias importações forem executadas; Por padrão, import.state no diretório de entrada será usado |
--merge | Para modelos sem entradas no arquivo .state , primeiro verifique entidades existentes com nomes ou títulos correspondentes; não apóia a fusão de políticas de retenção |
-g , --arg=NAME=VALUE | Argumentos de modelo, por exemplo -g ownerId=user-314159 |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
user create
Criar um usuário.
Exemplo:
seqcli user create -n alice -d 'Alice Example' -r 'User (read/write)' --password-stdin
Opção | Descrição |
---|---|
-n , --name=VALUE | Um nome de usuário único para o usuário |
-d , --display-name=VALUE | Um nome de forma longa para ajudar na identificação do usuário |
-f , --filter=VALUE | Um filtro de visualização que limita os eventos visíveis ao usuário |
-r , --role=VALUE | O título de uma função que concede as permissões do usuário no servidor; Se não for especificado, a nova função de usuário padrão será atribuída |
-e , --email=VALUE | O endereço de e -mail do usuário (permite uma imagem de gravatar para o usuário) |
-p , --password=VALUE | Uma senha inicial para o usuário, se a autenticação de nome de usuário/senha estiver em uso; Observe que --password-stdin é mais seguro |
--password-stdin | Leia a senha inicial para o usuário do STDIN , se a autenticação de nome de usuário/senha estiver em uso |
--no-password-change | Não force o usuário a alterar sua senha no próximo login |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
user list
Liste os usuários.
Exemplo:
seqcli user list
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome de usuário do (s) usuário (s) para listar |
-i , --id=VALUE | O ID de um único usuário para listar |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
user remove
Remova um usuário do servidor.
Exemplo:
seqcli user remove -n alice
Opção | Descrição |
---|---|
-n , --name=VALUE | O nome de usuário do (s) usuário (s) para remover |
-i , --id=VALUE | O ID de um único usuário para remover |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
user update
Atualize um usuário existente.
Exemplo:
seqcli user update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | O usuário atualizado no formato JSON; Isso pode ser produzido usando seqcli user list --json |
--json-stdin | Leia o usuário atualizado como JSON da STDIN |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
version
Imprima a versão executável atual.
workspace create
Crie um espaço de trabalho.
Exemplo:
seqcli workspace create -t 'My Workspace' -c signal-314159 -c dashboard-628318
Opção | Descrição |
---|---|
-t , --title=VALUE | Um título para o espaço de trabalho |
--description=VALUE | Uma descrição para o espaço de trabalho |
-c , --content=VALUE | O ID de um painel, sinal ou consulta salva para incluir no espaço de trabalho |
--protected | Especifique que o espaço de trabalho seja editável apenas pelos administradores |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
workspace list
Liste espaços de trabalho disponíveis.
Exemplo:
seqcli workspace list
Opção | Descrição |
---|---|
-t , --title=VALUE | O título do (s) espaço de trabalho para listar |
-i , --id=VALUE | O ID de um único espaço de trabalho para listar |
-o , --owner=VALUE | O ID do usuário para listar espaços de trabalho; Por padrão, os espaços de trabalho compartilhados são listados |
--json | Saída de impressão em JSON de nova linha (o padrão é um texto simples) |
--no-color | Não colorize a saída de texto |
--force-color | Saída redirecionada de força para ter a cor ANSI (a menos que --no-color também seja especificada) |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
workspace remove
Remova um espaço de trabalho do servidor.
Exemplo:
seqcli workspace remove -t 'My Workspace'
Opção | Descrição |
---|---|
-t , --title=VALUE | O título do (s) espaço de trabalho para remover |
-i , --id=VALUE | O ID de um único espaço de trabalho para remover |
-o , --owner=VALUE | O ID do usuário para remover os espaços de trabalho; Por padrão, os espaços de trabalho compartilhados são removidos |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
workspace update
Atualize um espaço de trabalho existente.
Exemplo:
seqcli workspace update --json '{...}'
Opção | Descrição |
---|---|
--json=VALUE | O espaço de trabalho atualizado no formato JSON; Isso pode ser produzido usando seqcli workspace list --json |
--json-stdin | Leia o espaço de trabalho atualizado como JSON de STDIN |
-s , --server=VALUE | O URL do servidor SEQ; Por padrão, o valor connection.serverUrl será usado |
-a , --apikey=VALUE | A chave da API a ser usada ao se conectar ao servidor; Por padrão, o valor connection.apiKey será usado |
--profile=VALUE | Um perfil de conexão a ser usado; Por padrão, os valores de configuração connection.serverUrl e connection.apiKey serão usados |
O comando seqcli ingest
pode ser usado para analisar logs de texto sem formatação em eventos de log estruturados.
seqcli ingest -x " {@t:timestamp} [{@l:level}] {@m:*}{:n}{@x:*} "
O argumento -x
acima é um padrão de extração que analisará eventos como:
2018-02-21 13:29:00.123 +10:00 [ERR] The operation failed
System.DivideByZeroException: Attempt to divide by zero
at SomeClass.SomeMethod()
Os padrões de extração têm uma sintaxe de alto nível simples:
Hello, world!
corresponderá a declarações de registro que são compostas apenas por esta saudação,{curly braces}
é uma expressão de correspondência que identifica uma parte do evento a ser extraída e{{
corresponderá ao texto literal {
, e }}
corresponde }
.As expressões de correspondência têm o formulário:
{name:matcher}
O nome e o Matcher são opcionais, mas um ou outro deve ser especificado. Portanto, {@t:timestamp}
especifica um nome de @t
e timestamp
de valor, {IPAddress}
especifica apenas um nome e {:n}
um valor apenas (neste caso, o novo fósforo interno).
O nome é o nome da propriedade a ser extraído; Existem quatro nomes de propriedades embutidos que recebem manuseio especial:
@t
- o registro de data e hora do evento@m
- a mensagem textual associada ao evento@l
- o nível do evento@x
- a exceção ou backtrace associado ao evento Outros nomes de propriedades estão anexados à carga útil do evento, então {Elapsed:dec}
Extrairá uma propriedade chamada Elapsed
, usando o dec
Decimal Matcher.
As expressões de correspondência sem nome são consumidas a partir da entrada, mas não são adicionadas à carga útil do evento.
Os fósforos identificam pedaços do evento de entrada.
Diferentes correspondentes são necessários para que um texto como 200OK
possa ser separado em propriedades separadas, ou seja {StatusCode:nat}{Status:alpha}
. Aqui, o Matcher nat
(número natural) também coerta o resultado em um valor numérico, para que seja anexado à carga útil do evento numericamente como 200
em vez de como texto "200"
.
Existem três tipos de matcores:
alpha
e nat
são embutidos denominados Matchers.*
, **
e SO-ON, são Matcores de Conteúdo que não são de Greedy ; Isso corresponderá a qualquer texto até que o próximo elemento do padrão corresponda ( *
), os próximos dois elementos correspondem e assim. Vimos isso em ação com os elementos {@m:*}{:n}
no exemplo - a mensagem é todo o texto até a próxima nova linha.=
, como {Phone:={:nat}-{:nat}-{:nat}}
. Isso extrairá pedaços de texto como 123-456-7890
na propriedade Phone
.Matcher | Descrição | Exemplo |
---|---|---|
* , ** , ... | Conteúdo não-greedoso | |
alpha | Uma ou mais letras | Abc |
alphanum | Uma ou mais letras ou números | a1b2 |
dec | Um número decimal | 12.345 |
ident | Um identificador no estilo C. | countOfMatches |
int | Um número inteiro | -123 |
iso8601dt | Um encontro ISO-8601 | 2020-01-28T13:50:01.123 |
level | Um nome de nível de registro | INF |
line | Qualquer conteúdo de linha única | one line! |
n | Um personagem ou sequência da nova linha | |
nat | Um número não negativo | 123 |
s | Um ou mais caracteres de espaço ou guia | |
serilogdt | Um tempo de dados no formato de log de arquivos serilog padrão | 2020-01-28 13:50:01.123 +10:00 |
syslogdt | Um datetime em formato syslog | Dec 8 09:12:13 |
t | Um único personagem de guia | |
timestamp | Um tempo de dados em qualquer formato reconhecido | |
token | Qualquer sequência de personagens não-brancos | 1+x$3 |
trailingident | Conteúdo multilina com linhas traseiras recuadas | |
unixdt | Um DateTime em formato de tempo Unix que suporta segundos (10 dígitos) ou milissegundos (12 dígitos) | 1608694199.999 |
w3cdt | Um par de formato de log W3C DATA/TIME | 2019-04-02 05:18:01 |
Os padrões de extração são processados da esquerda para a direita. Quando o primeiro padrão de não correspondência é encontrado, a extração para; Qualquer texto restante que não pudesse ser correspondido será anexado ao evento resultante em uma propriedade @unmatched
.
Os eventos de várias linhas são tratados procurando linhas que começam com o primeiro elemento do padrão de extração a ser usado. Isso funciona bem se a primeira linha de cada evento começar com algo inequívoco como um timestamp iso8601dt
; Se as linhas começarem com uma sintaxe menos específica, os primeiros elementos do padrão de extração poderão ser agrupados para identificar o início dos eventos com mais precisão:
{:=[{@t} {@l}]} {@m:*}
Aqui o texto literal [
, um token de data e hora, espaço adjacente
, nível e fechamento ]
são todos agrupados para que constituam um único elemento de padrão lógico para identificar o início dos eventos.
Quando os logs são transmitidos para seqcli ingest
em tempo real, um prazo de 10 ms é aplicado, dentro do qual todas as linhas que compõem o evento devem ser recebidas.
journalctl -f -n 0 |
seqcli ingest -x " {@t:syslogdt} {host} {ident:*}: {@m:*}{:n} " --invalid-data=ignore
/var/log/syslog
tail -c 0 -F /var/log/syslog |
seqcli ingest -x " {@t:syslogdt} {host} {ident:*}: {@m:*}{:n} "
Este exemplo ingere arquivos de log no formato:
# Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent)
cs(Referer) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
O padrão de extração é envolvido no exemplo para fins de exibição e deve aparecer em um argumento de uma string quando invocado.
seqcli ingest -i http.log --invalid-data=ignore -x " {@t:w3cdt} {ServerIP} {@m:={Method} {RequestPath}}
{Query} {Port:nat} {Username} {ClientIP} {UserAgent} {Referer} {StatusCode:nat} {Substatus:nat}
{Win32Status:nat} {ResponseBytes:nat} {RequestBytes:nat} {Elapsed}{:n} "
Um padrão {@m:=
é usado para coletar uma substring da linha de log para exibição como a mensagem do evento.
A família de comandos seqcli * update
possibilita a execução de atualizações arbitrárias em muitos tipos complexos de entidade.
Os comandos update
, como seqcli signal update
mostrados no exemplo abaixo, recebem uma representação JSON atualizada de uma entidade via STDIN
.
Isso funciona particularmente bem com ferramentas como jq
e conchas modernas com suporte nativo de JSON, como PowerShell:
PS > $warnings = (seqcli signal list -i signal-m33302 --json | ConvertFrom-Json)
PS > $warnings.Title
Warnings
PS > $warnings.Title = "Alarms"
PS > (echo $warnings | ConvertTo-Json) | seqcli signal update --json-stdin
PS > seqcli signal list -i signal-m33302 --json
{"Title": "Alarms", "Description": "Automatically created", "Filters": [{"De...