loggly
当启用插件时,APISIX 会将请求上下文信息序列化为符合 的数据格式,即具有 RFC5424 兼容标头的 Syslog。
属性
该插件支持使用批处理器来聚合并批量处理条目(日志或数据)。这样可以避免插件频繁地提交数据,默认设置情况下批处理器会每 5
秒钟或队列中的数据达到 1000
条时提交数据,如需了解批处理器相关参数设置,请参考 Batch-Processor。
如果要生成用户令牌,请在 Loggly 系统中的 <your assigned subdomain>/loggly.com/tokens
设置,或者在系统中单击 Logs > Source setup > Customer tokens
。
名称 | 类型 | 必选项 | 默认值 | 有效值 | 描述 |
---|---|---|---|---|---|
host | string | 否 | “logs-01.loggly.com” | 发送日志的主机的端点。 | |
port | integer | 否 | 514 | 要连接的 Loggly 端口。 仅用于 syslog 协议。 | |
timeout | integer | 否 | 5000 | 发送数据请求超时时间(以毫秒为单位)。 | |
protocol | string | 否 | “syslog” | [ “syslog”, “http”, “https” ] | 将日志发送到 Loggly 的协议。 |
log_format | object | 否 | nil | 以 JSON 格式的键值对来声明日志格式。对于值部分,仅支持字符串。如果是以 $ 开头,则表明是要获取 APISIX 变量 或 。 |
APISIX 支持 Syslog、(批量端点)协议将日志事件发送到 Loggly。默认情况下 的值为 syslog
。该协议允许你通过一些细粒度的控制(基于上游 HTTP 响应代码的日志严重性映射)发送符合 RFC5424 的系统日志事件。但是 HTTP/S 批量端点非常适合以更快的传输速度发送更大量的日志事件。
注意
Syslog 协议允许你发送符合 RFC5424 的 syslog 事件并进行细粒度控制。但是在以快速传输速度发送大量日志时,使用 HTTP/S 批量端点会更好。你可以通过以下方式更新元数据以更新使用的协议:
启用插件
以下示例展示了如何在指定路由上启用该插件:
最小化配置
你可以通过以下命令向 APISIX 发出请求:
发出请求后,你就可以在 Loggly 仪表盘上查看相关日志:
禁用插件
当你需要禁用该插件时,可以通过如下命令删除相应的 JSON 配置,APISIX 将会自动重新加载相关配置,无需重启服务: