用管子把东西弄得乱七八糟的。
loggly_pipe的Python项目详细描述
- 吃来自stdin的线。
- 将批处理发送到loggly(或compatible)。
- 将未经改动的线路拖至标准输出。
- poopsmarkjson到stdout。
安装
loggly-pipe被构建为作为独立文件执行,因此安装 直接从原始的github url工作得很好:
curl -L -o loggly-pipe https://raw.github.com/modcloth-labs/loggly-pipe/master/loggly_pipe.py chmod +x loggly-pipe
您还可以通过pip获取它,它将安装一个loggly-pipe可执行文件:
pip install loggly_pipe
配置
配置可以通过命令行或env给出。最新的命令行 提供的选项可能与预期的一样:
loggly-pipe --help
以下是用作选项默认值的环境变量列表:
- LOGGLY_TOKEN必需日志帐户中的一个令牌
- LOGGLY_SERVER基本服务器uri(默认 https://logs-01.loggly.com)
- LOGGLY_SHIPPER_COUNT寄件人线程数(默认值1)
- LOGGLY_TAGS逗号分隔的标记应用于已发送的记录。 它直接作为PATH_INFO的最后一个成员传递,因此 如有必要,应为url编码。(默认值python)
- LOGGLY_BATCH_SIZE装运前要累积的记录数 通过http(默认100)
- {TT15}$退出,消耗了这许多行(默认^ {TT16}$, 禁用)
- LOGGLY_STDIN_SLEEP_INTERVAL睡眠时间间隔(秒) 从stdin读取为空(默认值0.1)
- LOGGLY_FLUSH_INTERVAL刷新行的时间间隔(秒) 缓冲区,以便低活动不会导致记录备份(默认值 10.0)
- LOGGLY_SHIP_ATTEMPTS通过http重试每个批的次数 (默认值1)
- LOGGLY_ON_ERROR捕获异常时的行为,即 通常是通过http发布的,并且只会生效一次 ^已到达{tt21}$(选项为raise,ignore; 默认值raise)
- LOGGLY_DEBUG如果非空,则打印一些调试内容
用法
给定由基于行的json记录构成的stdin流,loggly-pipe将 发出每个未更改的记录以及一个具有单个_mark键的记录 每批。
下面是一个使用bunyan进行日志记录以及 用于人类可读性的bunyan命令行工具:
node server.js | loggly-pipe | bunyan
在^{tt2}的黑盒测试中使用的一个小示例$ 它本身可以在examples dir中找到。