log2http监视日志文件并将新内容发送到指定的http端点。

log2http的Python项目详细描述


日志2http

log2http监视日志文件并将新内容发送到指定的http端点。就这样。

安装

您需要python>;=3.6。

像这样安装应用程序(最好是在virtualenv中):

pip install log2http

设置

在您喜欢的位置放置如下所示的yaml配置文件:

-
  logfile: /Users/demo/example.log
  endpoint: http://endpoint1.example.com/tag/sample
  min_lines: 5
-
  logfile: /var/log/system.log
  endpoint: http://endpoint2.example.com/tag/syslog
  min_lines: 2
  • logfile指定要监视的文件
  • endpoint是要将收集的日志行发送到(作为post)的http端点。通常,这将是日志服务的url,例如http://logs-01.loggly.com/bulk/token/tag/example/
  • min_lines设置在发出http请求之前必须收集的最小行数(使用此选项可最小化每个记录的事件的http开销)

用法

安装后,您可以从终端启动log2http:

log2http --config=/path/to/the/config.yml

当log2http运行时,创建一些示例事件以查看是否正在收集它们。例如在bash中:

for i in {1..6}; do echo "hello world" >> example.log; done

输出应该告诉您是否正在收集和发送事件。

您还可以从python启动日志收集器,如下所示:

from log2http import load_config, LogCollector

config = load_config('/your/path/to/config.yml')
collector = LogCollector(config)
with collector:
    collector.start() # will run until interrupted

注意:日志行总是需要以换行符结尾(\n)。如果一行没有以换行符结尾,log2http将无限期地等待,直到它被写入文件。

地方发展

有关开发需求,请参见requirements-dev.txt

使用pytest运行测试。

使用mypy --ignore-missing-imports log2http运行静态类型检查。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java ProcessBuilder在使用多个参数时运行不正常   java如何使用Spring数据ORM/JPA创建EntityManagerFactory?   将Velocity宏转换为Java指令   internet上的Java TCP/IP服务器客户端通信   java为什么JDK 8允许一个局部内部类(在方法内部)访问封闭方法的非最终局部变量?   基于Java的比率算法   java应用程序在选择列表首选项时出错   java保存对象以供以后使用   java如何使用MySQL JDBC驱动程序连接Android和MySQL   java Zipkin可以用于控制台应用程序   java单击刷新Servlet页面显示重复内容   java如何递归地反转字符串数组?   java如何使用inputStream作为outputStream的文本?   java扩展令牌选择操作符   java在映射中使用通用枚举类   arraylist如何使用JAVA流从对象列表中查找平均值   windows将FileInputStream和FileOutputStream传递给ffmpeg进行转码(使用JAVEJava音频视频编码)   java Ant脚本在执行CVS签出后找不到目标   重复值情况下的java插入排序,双链表ADT   java如何在Accumulo中获取数据库查询计数