loggly

当启用插件时,APISIX 会将请求上下文信息序列化为符合 的数据格式,即具有 RFC5424 兼容标头的 Syslog。

属性

该插件支持使用批处理器来聚合并批量处理条目(日志或数据)。这样可以避免插件频繁地提交数据,默认设置情况下批处理器会每 5 秒钟或队列中的数据达到 1000 条时提交数据,如需了解批处理器相关参数设置,请参考 Batch-Processor

如果要生成用户令牌,请在 Loggly 系统中的 <your assigned subdomain>/loggly.com/tokens 设置,或者在系统中单击 Logs > Source setup > Customer tokens

名称类型必选项默认值有效值描述
hoststring“logs-01.loggly.com”发送日志的主机的端点。
portinteger514要连接的 Loggly 端口。 仅用于 syslog 协议。
timeoutinteger5000发送数据请求超时时间(以毫秒为单位)。
protocolstring“syslog”[ “syslog”, “http”, “https” ]将日志发送到 Loggly 的协议。
log_formatobjectnil以 JSON 格式的键值对来声明日志格式。对于值部分,仅支持字符串。如果是以 $ 开头,则表明是要获取 APISIX 变量 或 。

APISIX 支持 Syslog、(批量端点)协议将日志事件发送到 Loggly。默认情况下 的值为 syslog。该协议允许你通过一些细粒度的控制(基于上游 HTTP 响应代码的日志严重性映射)发送符合 RFC5424 的系统日志事件。但是 HTTP/S 批量端点非常适合以更快的传输速度发送更大量的日志事件。

注意

Syslog 协议允许你发送符合 RFC5424 的 syslog 事件并进行细粒度控制。但是在以快速传输速度发送大量日志时,使用 HTTP/S 批量端点会更好。你可以通过以下方式更新元数据以更新使用的协议:

启用插件

以下示例展示了如何在指定路由上启用该插件:

最小化配置

你可以通过以下命令向 APISIX 发出请求:

发出请求后,你就可以在 Loggly 仪表盘上查看相关日志:

禁用插件

当你需要禁用该插件时,可以通过如下命令删除相应的 JSON 配置,APISIX 将会自动重新加载相关配置,无需重启服务: