【问题标题】:"Error L10 (output buffer overflow)" when writing to Splunk drain写入 Splunk 排水管时出现“错误 L10(输出缓冲区溢出)”
【发布时间】:2013-07-08 17:13:48
【问题描述】:

我正在将我的日志推送到本地 splunk 安装。最近发现下面的错误重复很多(大约每分钟一次):

错误 L10 (输出缓冲区溢出):自 7150 条消息被丢弃 2013-06-26T19:19:52+00:00.134 1 2013-07-08T14:59:47.162084+00:00 主机应用程序 web.1 - [\x1B[37minfo\x1B[0m] 应用程序 - 性能 - 花了 31 获取行 ID 的毫秒数 ...

错误重复很多次,in the documentation 据说当您的应用程序产生大量日志时会发生这些错误。

问题是,我每秒几乎没有 20-30 条日志,这并不算多。我用其他排水管进行了测试(添加了内置的 papertrail 插件),这些错误不会在那里发生 - 所以它们特定于传出的 splunk 排水管。

我认为可能是 splunk 机器已加载,因此接收日志的速度不够快,但它的 CPU 处于空闲状态,并且它有足够的磁盘和内存。

另外,我相信该应用(Play 2 应用)一直在自动刷新日志到控制台,因此在发布之后不会大量累积未刷新的日志。

什么会导致传出 splunk 排水管的排水速度变慢?我应该如何调试它?

【问题讨论】:

    标签: logging heroku splunk


    【解决方案1】:

    在与 Heroku 团队进行了长时间的乒乓比赛后,我们找到了答案:

    我在配置日志排出时使用了 URL 前缀 http://,而不是 syslog://。当我将 URL 更改为 syslog:// 时,错误消失了,并且日志正确地流经 splunks。

    【讨论】:

      【解决方案2】:

      我的观点是,仅仅因为错误消失了,并不意味着您解决了问题。 HTTP 协议给出一个同步响应。因此,如果您达到阈值,无论是容量限制还是业务协议阈值,HTTP 响应代码都将作为指示。使用 Sumo Logic,如果您超过了突发速率限制,我们将返回 429 响应代码。 Heroku Logplex 没有针对负面响应代码进行调整,并且会丢弃数据。使用 syslog 端点,您也可能会丢失数据,除了 syslog 没有响应通道,因此它唯一的选择是删除数据。对于 Sumo Logic,您将在审核日志中看到通知,指示正在应用限制。发生这种情况时,您应该联系支持人员或您的客户团队,以调整您的限制或增加您的计划。

      【讨论】:

        【解决方案3】:

        对我来说,问题是应用程序由于错误而离线,并且不知何故 LogDNA 插件不喜欢这样。只需修复错误,重新部署并重新启动测功机就可以解决我的问题。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-12-31
          • 2020-10-04
          • 2017-05-12
          • 1970-01-01
          • 1970-01-01
          • 2023-03-11
          • 1970-01-01
          相关资源
          最近更新 更多