seqcli
Seq 客户端命令行应用程序。支持日志记录 ( seqcli log
)、搜索 ( search
)、拖尾 ( tail
)、查询 ( query
) 和 JSON 或纯文本日志文件摄取 ( ingest
) 等等。
适用于 Windows 的 Seq 安装程序包括seqcli
。否则,请下载适合您的操作系统的版本。或者,如果您安装了dotnet
,则可以使用以下命令将seqcli
安装为全局工具:
dotnet tool install --global seqcli
要设置默认服务器 URL 和 API 密钥,请运行:
seqcli config -k connection.serverUrl -v https://your-seq-server
seqcli config -k connection.apiKey -v your-api-key
API密钥将存储在您的SeqCli.json
配置文件中;在 Windows 上,这是使用 DPAPI 加密的;在 Mac/Linux 上,密钥当前以纯文本形式存储。作为在配置中存储 API 密钥的替代方法,可以通过--apikey=
参数将其传递给每个命令。
seqcli
也可以作为datalust/seqcli
下的 Docker 容器使用:
docker run --rm datalust/seqcli:latest []
要连接到本地计算机上 docker 容器中的 Seq,请使用计算机的 IP 地址(而不是 localhost)或使用--net host
指定 docker 主机网络。
使用 Docker 网络和卷使本地文件和其他容器可供seqcli
在其容器内访问。
每个设置值都可以在运行时通过指定SEQCLI_
形式的环境变量来覆盖,其中设置名称的每个点部分包含一个元素,并用下划线分隔。
例如,设置connection.serverUrl
可以用SEQCLI_CONNECTION_SERVERURL
变量覆盖。
如果您要自动化 Seq 设置,那么您很可能还没有可供seqcli
使用的 API 密钥。在初始Seq服务器配置期间,您可以指定firstRun.adminUsername
和firstRun.adminPasswordHash
(或等效的环境变量SEQ_FIRSTRUN_ADMINUSERNAME
和SEQ_FIRSTRUN_ADMINPASSWORDHASH
)来设置管理员帐户的初始用户名和密码。您可以使用它们创建 API 密钥,然后将 API 密钥令牌与其余seqcli
命令一起使用。
seqcli apikey create
命令接受--connect-username
和--connect-password-stdin
,并将新的 API 密钥令牌打印到STDOUT
(下面使用 PowerShell 语法):
$user = "admin"
$pw = "thepassword"
$token = (
echo $pw |
seqcli apikey create `
-t CLI `
--permissions="Read,Write,Project,Organization,System" `
--connect-username $user --connect-password-stdin
)
请参阅CONTRIBUTING.md
。
使用 API 密钥连接时,允许的操作由分配给该 API 密钥的权限确定。
要确定命令所需的权限,请检查等效服务器 API 操作的“权限需求”列。例如,命令apikey create
使用POST api/apikeys
端点,这需要Write
权限。
所有seqcli
命令都遵循相同的模式:
seqcli []
可以通过运行以下命令查看支持的命令的完整列表:
seqcli help
要显示特定命令的使用信息,请运行seqcli help
,例如:
seqcli help apikey create
这也适用于指挥组;要列出所有apikey
子命令,请运行:
seqcli help apikey
apikey
apikey create
— 创建用于自动化或摄取的 API 密钥。apikey list
— 列出可用的 API 密钥。apikey remove
— 从服务器中删除 API 密钥。apikey update
— 更新现有的 API 密钥。app
app define
— 为 .NET [SeqApp]
插件生成应用程序定义。app install
— 安装应用程序包。app list
— 列出已安装的应用程序包。app run
— 托管 .NET [SeqApp]
插件。app uninstall
— 卸载应用程序包。app update
— 更新已安装的应用程序包。appinstance
appinstance create
— 创建已安装应用程序的实例。appinstance list
— 列出已安装应用程序的实例。appinstance remove
— 从服务器中删除应用程序实例。appinstance update
— 更新现有的应用程序实例。bench
— 衡量查询性能。config
— 查看和设置SeqCli.json
文件中的字段;不带参数运行以列出所有字段。dashboard
dashboard list
— 列出仪表板。dashboard remove
— 从服务器中删除仪表板。dashboard render
— 从仪表板图表生成 CSV 或 JSON 结果集。expressionindex
expressionindex create
— 创建表达式索引。expressionindex list
— 列出表达式索引。expressionindex remove
— 从服务器中删除表达式索引。feed
feed create
— 创建 NuGet feed。feed list
— 列出 NuGet feed。feed remove
— 从服务器中删除 NuGet feed。feed update
— 更新现有的 NuGet feed。help
— 显示有关可用命令的信息。index
index list
— 列出索引。index suppress
— 抑制索引。ingest
- 从文件或STDIN
发送日志事件。license apply
— 将许可证应用于 Seq 服务器。log
— 将结构化日志事件发送到服务器。node
node demote
— 开始降级当前领导节点。node health
— 探测 Seq 节点的/health
端点,并打印返回的 HTTP 状态代码,如果无法查询端点,则打印“无法访问”。node list
— 列出 Seq 集群中的节点。print
- 来自文件或STDIN
CLEF/JSON 格式的漂亮打印事件。profile
profile create
— 创建或替换连接配置文件。profile list
— 列出连接配置文件。profile remove
— 删除连接配置文件。query
— 执行 SQL 查询并接收 CSV 格式的结果。retention
retention create
— 创建保留策略。retention list
— 列出保留策略。retention remove
— 从服务器中删除保留策略。retention update
— 更新现有保留策略。sample
sample ingest
- 将样本事件记录到 Seq 实例中。sample setup
- 使用示例仪表板、信号、用户等配置 Seq 实例。search
— 检索与给定过滤器匹配的日志事件。setting
setting clear
— 清除运行时可配置的服务器设置。setting names
— 打印所有支持的设置的名称。setting set
— 更改运行时可配置的服务器设置。setting show
— 打印运行时可配置服务器设置的当前值。signal
signal create
— 创建信号。signal import
— 以换行符分隔的 JSON 格式导入信号。signal list
— 列出可用信号。signal remove
— 从服务器中删除信号。signal update
— 更新现有信号。tail
— 与过滤器匹配的流日志事件。template
template export
— 将实体导出到模板文件中。template import
— 从模板文件导入实体。user
user create
— 创建用户。user list
— 列出用户。user remove
— 从服务器中删除用户。user update
— 更新现有用户。version
— 打印当前可执行版本。workspace
workspace create
— 创建工作区。workspace list
— 列出可用的工作区。workspace remove
— 从服务器中删除工作区。workspace update
— 更新现有工作区。apikey create
创建用于自动化或摄取的 API 密钥。
例子:
seqcli apikey create -t 'Test API Key' -p Environment=Test
选项 | 描述 |
---|---|
-t , --title=VALUE | API 密钥的标题 |
--token=VALUE | 预先分配的 API 密钥令牌;默认情况下,将生成一个新令牌并将其写入STDOUT |
-p , --property=NAME=VALUE | 指定名称/值属性,例如-p Customer=C123 -p Environment=Production |
--filter=VALUE | 应用于传入事件的过滤器 |
--minimum-level=VALUE | 可接受的最低事件级别/严重性;默认是接受所有事件 |
--use-server-timestamps | 丢弃客户端提供的时间戳并使用服务器时钟值 |
--permissions=VALUE | 以逗号分隔的权限列表,委托给 API 密钥;有效权限为Ingest (默认)、 Read 、 Write 、 Project 和System |
--connect-username=VALUE | 用于连接的用户名,主要在设置第一个 API 密钥时有用;具有“个人”订阅的服务器仅允许使用此选项的一个同时请求 |
--connect-password=VALUE | 当指定connect-username 时,对应的密码 |
--connect-password-stdin | 当指定connect-username 时,从STDIN 读取对应的密码 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
apikey list
列出可用的 API 密钥。
例子:
seqcli apikey list
选项 | 描述 |
---|---|
-t , --title=VALUE | 要列出的 API 密钥的标题 |
-i , --id=VALUE | 要列出的单个 API 密钥的 ID |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
apikey remove
从服务器中删除 API 密钥。
例子:
seqcli apikey remove -t 'Test API Key'
选项 | 描述 |
---|---|
-t , --title=VALUE | 要删除的 API 密钥的标题 |
-i , --id=VALUE | 要删除的单个 API 密钥的 ID |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
apikey update
更新现有的 API 密钥。
例子:
seqcli apikey update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | 更新后的 JSON 格式的 API 密钥;这可以使用seqcli apikey list --json 生成 |
--json-stdin | 从STDIN 读取更新后的 JSON 格式的 API 密钥 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下将使用connection.serverUrl 和connection.apiKey 配置值 |
app define
为 .NET [SeqApp]
插件生成应用程序定义。
例子:
seqcli app define -d "./bin/Debug/netstandard2.2"
选项 | 描述 |
---|---|
-d , --directory=VALUE | 包含 .NET Standard 程序集的目录;默认为当前目录 |
--type=VALUE | [SeqApp]插件类型名称;默认扫描程序集以查找标有此属性的单一类型 |
--indented | 使用缩进设置多行定义的格式 |
app install
安装应用程序包。
例子:
seqcli app install --package-id 'Seq.App.JsonArchive'
选项 | 描述 |
---|---|
--package-id=VALUE | 要安装的应用程序的包 ID |
--version=VALUE | 要安装的软件包版本;默认安装最新版本 |
--feed-id=VALUE | 用于安装包的 NuGet feed 的 id;如果只配置了一个 feed,则可以省略 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
app list
列出已安装的应用程序包。
例子:
seqcli app list
选项 | 描述 |
---|---|
--package-id=VALUE | 要列出的应用程序的包 ID |
-i , --id=VALUE | 要列出的单个应用程序的 ID |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
app run
托管 .NET [SeqApp]
插件。
例子:
seqcli tail --json | seqcli app run -d "./bin/Debug/netstandard2.2" -p [email protected]
选项 | 描述 |
---|---|
-d , --directory=VALUE | 包含 .NET Standard 程序集的目录;默认为当前目录 |
--type=VALUE | [SeqApp]插件类型名称;默认扫描程序集以查找标有此属性的单一类型 |
-p , --property=NAME=VALUE | 指定应用程序的名称/值设置,例如-p [email protected] -p Subject="Alert!" |
--storage=VALUE | 可以存储应用程序特定数据的目录;默认为当前目录 |
-s , --server=VALUE | Seq服务器的URL,仅用于应用程序配置(不连接到服务器);默认情况下将使用connection.serverUrl 值 |
--server-instance=VALUE | Seq服务器的实例名称,仅用于应用程序配置;默认没有实例名称 |
-t , --title=VALUE | 应用实例标题,仅用于应用配置;默认为占位符标题。 |
--id=VALUE | 应用实例id,仅用于应用配置;默认为占位符 id。 |
--read-env | 从环境变量中读取应用程序配置和设置,如 https://docs.datalust.co/docs/seq-apps-in-other-languages 中指定的;忽略除 --directory 和 --type 之外的所有选项 |
app uninstall
卸载应用程序包。
例子:
seqcli app uninstall --package-id 'Seq.App.JsonArchive'
选项 | 描述 |
---|---|
--package-id=VALUE | 要卸载的应用程序包的包id |
-i , --id=VALUE | 待卸载的单个应用包id |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
app update
更新已安装的应用程序包。
例子:
seqcli app update -n 'HTML Email'
选项 | 描述 |
---|---|
-i , --id=VALUE | 要更新的单个已安装应用程序的 ID |
-n , --name=VALUE | 要更新的已安装应用程序的名称 |
--all | 更新所有已安装的应用程序;与-i 或-n 不兼容 |
--version=VALUE | 要更新到的软件包版本;默认是更新到关联 feed 中的最新版本 |
--force | 即使已安装目标版本也更新应用程序 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
appinstance create
创建已安装应用程序的实例。
例子:
seqcli appinstance create -t 'Email Ops' --app hostedapp-314159 -p [email protected]
选项 | 描述 |
---|---|
-t , --title=VALUE | 应用程序实例的标题 |
--app=VALUE | 要实例化的已安装应用包的id |
-p , --property=NAME=VALUE | 指定应用程序的名称/值设置,例如-p [email protected] -p Subject="Alert!" |
--stream[=VALUE] | 在摄取传入事件时将其流式传输到此应用程序实例;可选择接受限制应流式传输哪些事件的信号表达式,例如signal-1,signal-2 |
--overridable=VALUE | 指定调用应用程序时用户可能会覆盖的设置名称 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
appinstance list
列出已安装应用程序的实例。
例子:
seqcli appinstance list
选项 | 描述 |
---|---|
-t , --title=VALUE | 要列出的应用程序实例的标题 |
-i , --id=VALUE | 要列出的单个应用程序实例的 ID |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
appinstance remove
从服务器中删除应用程序实例。
例子:
seqcli appinstance remove -t 'Email Ops'
选项 | 描述 |
---|---|
-t , --title=VALUE | 要删除的应用程序实例的标题 |
-i , --id=VALUE | 要删除的单个应用程序实例的 id |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
appinstance update
更新现有应用程序实例。
例子:
seqcli appinstance update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | JSON格式的更新后的应用程序实例;这可以使用seqcli appinstance list --json 生成 |
--json-stdin | 从STDIN 以 JSON 形式读取更新的应用程序实例 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
bench
衡量查询性能。
选项 | 描述 |
---|---|
-r , --runs=VALUE | 要执行的运行次数;默认值为 10 |
-c , --cases=VALUE | 包含要运行的案例集的 JSON 文件。默认为一组标准案例。 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--start=VALUE | 查询的 ISO 8601 日期/时间 |
--end=VALUE | 要查询的 ISO 8601 日期/时间 |
--reporting-server=VALUE | 将基准结果发送到的 Seq 服务器的地址 |
--reporting-apikey=VALUE | 连接到报告服务器时使用的 API 密钥 |
--description=VALUE | 台架测试运行的可选描述 |
--with-ingestion | 基准测试是否应该包括向 Seq 发送事件 |
--with-queries | 基准测试是否应该包括查询 Seq |
config
查看和设置SeqCli.json
文件中的字段;不带参数运行以列出所有字段。
选项 | 描述 |
---|---|
-k , --key=VALUE | 该字段,例如connection.serverUrl |
-v , --value=VALUE | 字段值;如果未指定,该命令将打印当前值 |
-c , --clear | 清除字段 |
dashboard list
列出仪表板。
例子:
seqcli dashboard list
选项 | 描述 |
---|---|
-t , --title=VALUE | 要列出的仪表板的标题 |
-i , --id=VALUE | 要列出的单个仪表板的 ID |
-o , --owner=VALUE | 要为其列出仪表板的用户 ID;默认情况下,列出共享仪表板 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
dashboard remove
从服务器中删除仪表板。
例子:
seqcli dashboard remove -i dashboard-159
选项 | 描述 |
---|---|
-t , --title=VALUE | 要删除的仪表板的标题 |
-i , --id=VALUE | 要删除的单个仪表板的 ID |
-o , --owner=VALUE | 要为其删除仪表板的用户 ID;默认情况下,共享仪表板被删除 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
dashboard render
从仪表板图表生成 CSV 或 JSON 结果集。
例子:
seqcli dashboard render -i dashboard-159 -c 'Response Time (ms)' --last 7d --by 1h
选项 | 描述 |
---|---|
-i , --id=VALUE | 要呈现的单个仪表板的 ID |
-c , --chart=VALUE | 仪表板上要呈现的图表的标题 |
--last=VALUE | 图表渲染的持续时间,例如7d ;这将与间隔边界对齐;必须指定--last 或--start 和--end |
--by=VALUE | 图表数据的时间片间隔,作为持续时间,例如1h |
--start=VALUE | 查询的 ISO 8601 日期/时间 |
--end=VALUE | 要查询的 ISO 8601 日期/时间 |
--signal=VALUE | 要应用的信号表达式或相交信号 ID 列表,例如signal-1,signal-2 |
--timeout=VALUE | 执行超时(以毫秒为单位) |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
expressionindex create
创建表达式索引。
例子:
seqcli expressionindex create --expression "ServerName"
选项 | 描述 |
---|---|
-e , --expression=VALUE | 要索引的表达式 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
expressionindex list
列出表达式索引。
例子:
seqcli expressionindex list
选项 | 描述 |
---|---|
-i , --id=VALUE | 要列出的单个表达式索引的 id |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
expressionindex remove
从服务器中删除表达式索引。
例子:
seqcli expressionindex -i expressionindex-2529
选项 | 描述 |
---|---|
-i , --id=VALUE | 要删除的表达式索引的 id |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下将使用connection.serverUrl 和connection.apiKey 配置值 |
feed create
创建 NuGet 源。
例子:
seqcli feed create -n 'CI' --location="https://f.feedz.io/example/ci" -u Seq --password-stdin
选项 | 描述 |
---|---|
-n , --name=VALUE | Feed 的唯一名称 |
-l , --location=VALUE | 进料位置;这可能是 NuGet v2 或 v3 feed URL,或者 Seq 服务器上的本地文件系统路径 |
-u , --username=VALUE | 如果需要身份验证,则连接到 feed 时应提供用户名 Seq |
-p , --password=VALUE | 提要密码(如果需要身份验证);请注意--password-stdin 更安全 |
--password-stdin | 从STDIN 读取 feed 密码 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
feed list
列出 NuGet 源。
例子:
seqcli feed list
选项 | 描述 |
---|---|
-n , --name=VALUE | 要列出的 feed 的名称 |
-i , --id=VALUE | 要列出的单个提要的 ID |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
feed remove
从服务器中删除 NuGet 源。
例子:
seqcli feed remove -n CI
选项 | 描述 |
---|---|
-n , --name=VALUE | 要删除的 Feed 的名称 |
-i , --id=VALUE | 要删除的单个 feed 的 ID |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
feed update
更新现有的 NuGet 源。
例子:
seqcli feed update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | 更新后的 JSON 格式的 NuGet feed;这可以使用seqcli feed list --json 生成 |
--json-stdin | 从STDIN 读取更新后的 NuGet feed 作为 JSON |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
help
显示有关可用命令的信息。
例子:
seqcli help search
选项 | 描述 |
---|---|
-m , --markdown | 生成用于文档的 Markdown |
index list
列出索引。
例子:
seqcli index list
选项 | 描述 |
---|---|
-i , --id=VALUE | 要列出的单个索引的 id |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
index suppress
抑制索引。
例子:
seqcli index suppress -i index-2191448f1d9b4f22bd32c6edef752748
选项 | 描述 |
---|---|
-i , --id=VALUE | 要抑制的索引的 id |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下将使用connection.serverUrl 和connection.apiKey 配置值 |
ingest
从文件或STDIN
发送日志事件。
例子:
seqcli ingest -i log-*.txt --json --filter="@Level <> 'Debug'" -p Environment=Test
选项 | 描述 |
---|---|
-i , --input=VALUE | 要摄取的文件,包括* 通配符;如果未指定,将使用STDIN |
--invalid-data=VALUE | 指定如何处理无效数据: fail (默认)或ignore |
-p , --property=NAME=VALUE | 指定名称/值属性,例如-p Customer=C123 -p Environment=Production |
-x , --extract=VALUE | 应用于纯文本日志的提取模式(指定--json 时忽略) |
--json | 以 JSON 形式读取事件(默认采用纯文本) |
-f , --filter=VALUE | 过滤表达式以选择事件子集 |
-m , --message=VALUE | 与摄取事件相关联的消息;支持 https://messagetemplates.org 语法 |
-l , --level=VALUE | 与摄入事件相关的级别或严重性;这将覆盖事件本身中存在的任何级别信息 |
--send-failure=VALUE | 指定如何处理连接失败: fail (默认)、 retry 、 continue 或ignore |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
--batch-size=VALUE | 每个请求中发送到摄取端点的最大事件数;如果未指定,将使用值100 |
license apply
将许可证应用于 Seq 服务器。
例子:
seqcli license apply --certificate="license.txt"
选项 | 描述 |
---|---|
-c , --certificate=VALUE | 证书文件;文件必须是 UTF-8 文本 |
--certificate-stdin | 从STDIN 读取许可证书 |
--automatically-refresh | 如果许可证用于订阅,请定期检查datalust.co 并在订阅更改或续订时自动刷新证书 |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
log
将结构化日志事件发送到服务器。
例子:
seqcli log -m 'Hello, {Name}!' -p Name=World -p App=Test
选项 | 描述 |
---|---|
-m , --message=VALUE | 与事件关联的消息(默认不发送消息);支持 https://messagetemplates.org 语法 |
-l , --level=VALUE | 事件的级别或严重性(默认为Information ) |
-t , --timestamp=VALUE | 事件时间戳为 ISO-8601(默认使用当前 UTC 时间戳) |
-x , --exception=VALUE | 要发送的其他异常或错误信息(如果有) |
-p , --property=NAME=VALUE | 指定名称/值属性,例如-p Customer=C123 -p Environment=Production |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
node demote
开始降级当前领导节点。
例子:
seqcli node demote --verbose --wait
选项 | 描述 |
---|---|
--wait | 等待领导被降职后再退出 |
-y , --confirm | 当提示继续时回答 [y]es |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
node health
探测 Seq 节点的/health
端点,并打印返回的 HTTP 状态代码,如果无法查询端点,则打印“无法访问”。
例子:
seqcli node health -s https://seq-2.example.com
选项 | 描述 |
---|---|
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下,将使用connection.serverUrl 和connection.apiKey 配置值 |
node list
列出 Seq 集群中的节点。
例子:
seqcli node list --json
选项 | 描述 |
---|---|
-n , --name=VALUE | 要列出的集群节点的名称 |
-i , --id=VALUE | 要列出的单个集群节点的 id |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥;默认情况下将使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的连接配置文件;默认情况下将使用connection.serverUrl 和connection.apiKey 配置值 |
print
来自文件或STDIN
CLEF/JSON 格式的漂亮打印事件。
例子:
seqcli print -i log-20201028.clef
选项 | 描述 |
---|---|
-i , --input=VALUE | 读取CLEF文件,包含* 通配符;如果未指定,将使用STDIN |
-f , --filter=VALUE | 过滤表达式以选择事件子集 |
--template=VALUE | 指定输出模板来控制纯文本格式 |
--invalid-data=VALUE | 指定如何处理无效数据: fail (默认)或ignore |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
profile create
创建或替换连接配置文件。
例子:
seqcli profile create -n Production -s https://seq.example.com -a th15ISanAPIk3y
选项 | 描述 |
---|---|
-n , --name=VALUE | 连接配置文件的名称 |
-s , --server=VALUE | Seq 服务器的 URL |
-a , --apikey=VALUE | 连接到服务器时使用的 API 密钥(如果需要) |
profile list
列出连接配置文件。
例子:
seqcli profile list
profile remove
删除连接配置文件。
例子:
seqcli profile remove -n Production
选项 | 描述 |
---|---|
-n , --name=VALUE | 要删除的连接配置文件的名称 |
query
执行 SQL 查询并接收 CSV 格式的结果。
例子:
seqcli query -q "select count(*) from stream group by @Level" --start="2018-02-28T13:00Z"
选项 | 描述 |
---|---|
-q , --query=VALUE | 要执行的查询 |
--start=VALUE | 查询的 ISO 8601 日期/时间 |
--end=VALUE | 要查询的 ISO 8601 日期/时间 |
--signal=VALUE | 要应用的信号表达式或相交信号 ID 列表,例如signal-1,signal-2 |
--timeout=VALUE | 执行超时(以毫秒为单位) |
--json | 以换行符分隔的 JSON 格式打印输出(默认为纯文本) |
--no-color | 不要对文本输出着色 |
--force-color | 强制重定向输出具有 ANSI 颜色(除非还指定了--no-color ) |
-s , --server=VALUE | Seq服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
retention create
制定保留政策。
例子:
seqcli retention create --after 30d --delete-all-events
选项 | 描述 |
---|---|
--after=VALUE | 此后,该政策将删除事件,例如7d |
--delete-all-events | 该策略应删除所有事件(当前唯一受支持的选项) |
--delete=VALUE | 摄入时,将传入事件流到此应用程序实例中;可选地接受信号表达式限制哪些事件应流式传输 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
retention list
列出保留政策。
例子:
seqcli retention list
选项 | 描述 |
---|---|
-i , --id=VALUE | 单个保留政策的ID |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
retention remove
从服务器中删除保留策略。
例子:
seqcli retention remove -i retentionpolicy-17
选项 | 描述 |
---|---|
-i , --id=VALUE | 单个保留政策的ID |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
retention update
更新现有的保留政策。
例子:
seqcli retention update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | 以JSON格式更新的保留政策;这可以使用seqcli retention list --json 生产 |
--json-stdin | 阅读最新的保留政策,为STDIN 的JSON |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
sample ingest
将示例事件记录到SEQ实例中。
例子:
seqcli sample ingest
选项 | 描述 |
---|---|
-y , --confirm | 提示继续回答[y] |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
--quiet | 不要回声STDOUT 事件 |
--batch-size=VALUE | 每个请求中要发送到摄入端点的最大事件数;如果未指定,则将使用100 的值 |
sample setup
使用示例仪表板,信号,用户等配置SEQ实例。
例子:
seqcli sample setup
选项 | 描述 |
---|---|
-y , --confirm | 提示继续回答[y] |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
search
检索与给定过滤器匹配的日志事件。
例子:
seqcli search -f "@Exception like '%TimeoutException%'" -c 30
选项 | 描述 |
---|---|
-f , --filter=VALUE | 用于搜索的过滤器,例如Host = 'xmpweb-01.example.com' |
-c , --count=VALUE | 要检索的最大事件数量;默认值为1 |
--start=VALUE | ISO 8601查询日期/时间 |
--end=VALUE | ISO 8601查询日期/时间 |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
--signal=VALUE | 信号表达式或相交信号ID的列表,例如signal-1,signal-2 |
--request-timeout=VALUE | 允许以毫秒为单位检索事件的每一页的时间;默认值为100000 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
setting clear
清除运行时可配置的服务器设置。
选项 | 描述 |
---|---|
-n , --name=VALUE | 设置名称,例如OpenIdConnectClientSecret |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
setting names
打印所有受支持设置的名称。
setting set
更改运行时可配置的服务器设置。
选项 | 描述 |
---|---|
-n , --name=VALUE | 设置名称,例如OpenIdConnectClientSecret |
-v , --value=VALUE | 设置值,如果接受多个值 |
--value-stdin | 阅读来自STDIN 的价值 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
setting show
打印运行时可配置服务器设置的当前值。
选项 | 描述 |
---|---|
-n , --name=VALUE | 设置名称,例如OpenIdConnectClientSecret |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
signal create
创建一个信号。
例子:
seqcli signal create -t 'Exceptions' -f "@Exception is not null"
选项 | 描述 |
---|---|
-t , --title=VALUE | 信号的标题 |
--description=VALUE | 信号的描述 |
-f , --filter=VALUE | 过滤到信号 |
-c , --column=VALUE | 列与信号关联;该论点可以多次使用 |
--group=VALUE | 与信号关联的明确组名称;默认值是从过滤器推断组 |
--no-group | 指定不应推断任何群体;默认值是从过滤器推断组 |
--protected | 指定信号仅由管理员编辑 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
signal import
以Newline划分的JSON格式进口信号。
例子:
seqcli signal import -i ./Exceptions.json
选项 | 描述 |
---|---|
--merge | 更新具有与导入数据中的ID相匹配的ID信号;默认值是始终创建新信号 |
-i , --input=VALUE | 档案导入;如果未指定,将使用STDIN |
-o , --owner=VALUE | 用户以导入信号的ID;默认情况下,共享信号是导入的 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
signal list
列表可用信号。
例子:
seqcli signal list
选项 | 描述 |
---|---|
-t , --title=VALUE | 列出的信号标题 |
-i , --id=VALUE | 单个信号的ID列出 |
-o , --owner=VALUE | 用户列出信号的ID;默认情况下,共享信号为listD |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
signal remove
从服务器中删除信号。
例子:
seqcli signal remove -t 'Test Signal'
选项 | 描述 |
---|---|
-t , --title=VALUE | 信号的标题删除 |
-i , --id=VALUE | 单个信号的ID删除 |
-o , --owner=VALUE | 用户的ID删除信号;默认情况下,删除共享信号 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
signal update
更新现有信号。
例子:
seqcli signal update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | JSON格式更新的信号;这可以使用seqcli signal list --json 产生 |
--json-stdin | 将更新的信号读取为STDIN 的JSON |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
tail
流与过滤器匹配的流日志事件。
选项 | 描述 |
---|---|
-f , --filter=VALUE | 可选的服务器端过滤器可应用于流,例如@Level = 'Error' |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
--signal=VALUE | 信号表达式或相交信号ID的列表,例如signal-1,signal-2 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
template export
将实体导出到模板文件中。
例子:
seqcli template export -o ./Templates
选项 | 描述 |
---|---|
-o , --output=VALUE | 编写模板文件的目录;目录必须存在;任何具有与导出模板匹配的名称的现有文件都将被覆盖;默认值为. |
-i , --include=VALUE | 信号,仪表板,保存查询,工作区或保留政策的ID;该论点可以多次指定;默认值是导出所有共享实体 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
template import
从模板文件导入实体。
例子:
seqcli template import -i ./Templates
选项 | 描述 |
---|---|
-i , --input=VALUE | 读取.template 文件集的目录;默认值为. |
--state=VALUE | 文件的路径将将模板名称映射到目标服务器上创建的实体的ID,避免执行多个导入时避免重复;默认情况下,将使用输入目录中的import.state |
--merge | 对于.state 文件中没有条目的模板,请首先检查具有匹配名称或标题的现有实体;不支持合并保留政策 |
-g , --arg=NAME=VALUE | 模板参数,例如-g ownerId=user-314159 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
user create
创建一个用户。
例子:
seqcli user create -n alice -d 'Alice Example' -r 'User (read/write)' --password-stdin
选项 | 描述 |
---|---|
-n , --name=VALUE | 用户独特的用户名 |
-d , --display-name=VALUE | 一个长格式的名称,以帮助识别用户 |
-f , --filter=VALUE | 限制用户可见事件的视图过滤器 |
-r , --role=VALUE | 授予服务器上用户权限的角色的标题;如果未指定,将分配默认的新用户角色 |
-e , --email=VALUE | 用户的电子邮件地址(为用户启用Gravatar图像) |
-p , --password=VALUE | 如果使用了用户名/密码身份验证,用户的初始密码;请注意--password-stdin 更安全 |
--password-stdin | 如果使用了用户名/密码身份验证,请读取STDIN 的用户的初始密码 |
--no-password-change | 不要强迫用户在下次登录时更改密码 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
user list
列出用户。
例子:
seqcli user list
选项 | 描述 |
---|---|
-n , --name=VALUE | 用户列表的用户名 |
-i , --id=VALUE | 单个用户列出的ID |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
user remove
从服务器中删除用户。
例子:
seqcli user remove -n alice
选项 | 描述 |
---|---|
-n , --name=VALUE | 用户的用户名删除 |
-i , --id=VALUE | 单个用户的ID删除 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
user update
更新现有用户。
例子:
seqcli user update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | 以JSON格式更新的用户;这可以使用seqcli user list --json 生产 |
--json-stdin | 阅读已更新的用户为STDIN 的JSON |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
version
打印当前可执行版本。
workspace create
创建一个工作区。
例子:
seqcli workspace create -t 'My Workspace' -c signal-314159 -c dashboard-628318
选项 | 描述 |
---|---|
-t , --title=VALUE | 工作区的标题 |
--description=VALUE | 工作空间的描述 |
-c , --content=VALUE | 仪表板,信号或保存查询的ID,以包含在工作区中 |
--protected | 指定工作空间仅由管理员进行编辑 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
workspace list
列出可用的工作区。
例子:
seqcli workspace list
选项 | 描述 |
---|---|
-t , --title=VALUE | 列表的工作区标题 |
-i , --id=VALUE | 单个工作区的ID列出 |
-o , --owner=VALUE | 用户的ID列出了工作区;默认情况下,共享工作区为列表 |
--json | 在Newline划定的JSON中打印输出(默认为纯文本) |
--no-color | 不要着色文本输出 |
--force-color | 强制重定向输出具有ANSI颜色(除非还指定了--no-color ) |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
workspace remove
从服务器上删除工作区。
例子:
seqcli workspace remove -t 'My Workspace'
选项 | 描述 |
---|---|
-t , --title=VALUE | 工作空间的标题要删除 |
-i , --id=VALUE | 单个工作区的ID删除 |
-o , --owner=VALUE | 用户的ID删除工作区;默认情况下,共享工作区已删除 |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
workspace update
更新现有工作区。
例子:
seqcli workspace update --json '{...}'
选项 | 描述 |
---|---|
--json=VALUE | JSON格式更新的工作区;这可以使用seqcli workspace list --json 生产 |
--json-stdin | 阅读已更新的工作空间为STDIN 的JSON |
-s , --server=VALUE | SEQ服务器的URL;默认情况下将使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 连接到服务器时要使用的API密钥;默认情况下将使用connection.apiKey |
--profile=VALUE | 使用的连接配置文件;默认情况下,将使用connection.serverUrl connection.apiKey |
seqcli ingest
命令可用于将纯文本日志解析为结构化日志事件。
seqcli ingest -x " {@t:timestamp} [{@l:level}] {@m:*}{:n}{@x:*} "
上面的-x
参数是一种提取模式,将解析类似:
2018-02-21 13:29:00.123 +10:00 [ERR] The operation failed
System.DivideByZeroException: Attempt to divide by zero
at SomeClass.SomeMethod()
提取模式具有简单的高级语法:
Hello, world!
将匹配仅由此问候组成的记录语句,{curly braces}
之间的文字是匹配表达式,标识要提取的事件的一部分,并且{{
将匹配字面文本{
,and }}
匹配}
。匹配表达式具有形式:
{name:matcher}
名称和匹配项都是可选的,但必须指定一个或另一个。因此, {@t:timestamp}
指定@t
的名称,值timestamp
, {IPAddress}
仅指定一个名称,而{:n}
仅一个值(在这种情况下为内置的newline Matcher)。
名称是要提取的属性名称;有四个内置的属性名称具有特殊处理:
@t
T-活动的时间戳@m
与事件关联的文本消息@l
事件的级别@x
事件关联的异常或回溯其他属性名称附加到事件有效载荷,因此{Elapsed:dec}
将使用dec
小数配匹配器提取称为Elapsed
属性。
从输入中消耗了没有名称的匹配表达式,但未添加到事件有效载荷中。
匹配者识别输入事件的块。
需要不同的匹配器,以便将像200OK
这样的文本分为单独的属性,即{StatusCode:nat}{Status:alpha}
。在这里, nat
(自然数)匹配器还将结果胁迫到数字值中,因此将其附加到事件有效负载上为200
而不是文本"200"
。
有三种匹配者:
alpha
和nat
这样的匹配者是内置的命名匹配者。*
, **
和SO-ON是非怪兽内容匹配者;这些将匹配任何文本,直到下一个模式元素匹配( *
),接下来的两个元素匹配和SO-ON。我们在示例中使用{@m:*}{:n}
元素看到了这一点 - 消息是所有文本,直到下一个newline。=
,例如{Phone:={:nat}-{:nat}-{:nat}}
。这将将大量文本(例如123-456-7890
提取到Phone
属性中。匹配器 | 描述 | 例子 |
---|---|---|
* , ** ,... | 非绿色内容 | |
alpha | 一个或多个字母 | Abc |
alphanum | 一个或多个字母或数字 | a1b2 |
dec | 小数号 | 12.345 |
ident | C风格的标识符 | countOfMatches |
int | 一个整数 | -123 |
iso8601dt | ISO-8601日期时间 | 2020-01-28T13:50:01.123 |
level | 记录级别的名称 | INF |
line | 任何单行内容 | one line! |
n | 新线字符或序列 | |
nat | 一个非负数 | 123 |
s | 一个或多个空间或标签字符 | |
serilogdt | 默认Serilog文件记录格式的DateTime | 2020-01-28 13:50:01.123 +10:00 |
syslogdt | Syslog格式的DateTime | Dec 8 09:12:13 |
t | 单个标签字符 | |
timestamp | 任何公认格式的日期时间 | |
token | 任何非Whitespace字符的序列 | 1+x$3 |
trailingident | 多行内容带有缩进的尾线 | |
unixdt | unix时间格式的DateTime支持秒(10位)或毫秒(12位)的DateTime | 1608694199.999 |
w3cdt | W3C日志格式日期/时间对 | 2019-04-02 05:18:01 |
从左到右处理提取模式。当遇到第一个非匹配模式时,提取停止;任何无法匹配的剩余文本都将附加到@unmatched
属性中的结果事件上。
通过寻找从要使用的提取模式的第一个元素开始的行来处理多行事件。如果每个事件的第一行始于诸如iso8601dt
时间戳之类的明确内容,则可以很好地工作;如果行以较少特定的语法开头,则可以将提取模式的前几个元素分组,以更准确地识别事件的开始:
{:=[{@t} {@l}]} {@m:*}
在这里文字[
,时间戳令牌,相邻空间
,级别和关闭]
全部分组,因此它们构成一个单个逻辑模式元素以识别事件的开始。
当日志实时流入seqcli ingest
时,将应用10毫秒的截止日期,其中必须收到构成事件的任何尾线。
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} "
此示例以格式摄入日志文件:
# 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
提取模式包裹在示例中以进行显示目的,并在调用时必须在一个字符串参数中出现。
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} "
嵌套{@m:=
模式用于收集日志行的子字符串作为事件的消息,以显示显示。
seqcli * update
命令系列使得对许多复杂实体类型执行任意更新。
如下示例所示的update
命令,如seqcli signal update
,通过STDIN
接收了实体的更新JSON表示形式。
这与jq
和具有本地JSON支持的现代壳(例如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...