Web日志实用程序到欠费206请求

merge206的Python项目详细描述


小型web日志实用程序,用于分析诸如apache或nginx和 将尝试查找206个可能与 原始的200或206个请求,并将它们聚合为单个请求。它 这是不是通过指纹请求来猜测它是否来自同一个 用户。指纹是基于'request_header_referer', “远程用户”、“请求头用户代理”、“请求http服务器”, “请求方法”、“请求URL”、“远程主机”。

警告:生成的日志可能不准确。没有办法 知道来自同一IP的两个206请求,对于同一URL,使用 同一个用户代理,来自同一个用户,甚至两个用户中的同一个用户 不同的浏览器选项卡。同样,同一用户可能会暂停很长时间 再玩之前。

调整--delay参数会对总数产生很大影响 请求的数量。如果用户通常暂停视频很长时间,或者 在浏览器中的PDF查看器中翻页时间较长,则会 想耽搁很久。然而,拖延时间越长,两次机会就越大 同一指纹的不同用户错误地合并到 单一请求。

  • 组合请求将是遇到的第一个请求,除了 总共的响应字节。
  • 合并请求将取代最后一个请求 合并。这意味着日志数据将不会输出到 根据时间戳的时间顺序

用法

Usage:
  merge206.py [-p PATTERN] [-d SECONDS] [-i FILE]

Options:
  -i FILE, --input FILE             Logfile to read
  -p PATTERN, --pattern PATTERN     Apache log format specification. see https://github.com/rory/apache-log-parser#supported-values
  -d SECONDS, --delay SECONDS       The max time between 206 partial requests [default: 600]
  -h --help                         Show this screen.
  --version                         Show version.

更改

1.1(2017-6-8)

  • 修正了404和其他错误代码与206合并的错误
  • 修复了一些性能问题
  • 进行一些测试

1.0

初始版本

已知问题

  • 目前有一个bug,在延迟时间内有200个请求 佩里恩将被合并。
  • 合并的请求不能按时间顺序获得输出。

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

推荐PyPI第三方库


热门话题
java将字符串拆分为带关键字的部分   删除数据库后未指定java数据源问题“url”属性   网络化java多人游戏连接   Java当新字符串等于旧字符串时,为什么substring()不创建新对象?   一个实例到多个bean的java注入   JavaSpringMVC验证错误消息   java总结if语句,并从另一个对象(如字符串[])读取if条件(动态if)   需要多个输入的Java IF语句   jsf如何选择正确的bean范围?   java将数据库值加载到组合框JSP,Hibernate   一次活动中的java 3布局   团队和球员反对Java的困难   java ActionListener如何知道按下了哪个按钮?