跳转到主要内容

使用haufe.requestmonitoring条目分析Zope实例日志

项目描述

简介

本项目为您的系统添加了一个新的实用命令:zope_lrr_analyzer。此实用工具仅与安装了haufe.requestmonitoring(并且启用了监控长时间运行请求的钩子)的Zope实例日志配合使用。

因此,您的instance.log必须包含如下条目

------
2012-03-27T15:58:19 WARNING RequestMonitor.DumpTrace Long running request
Request 28060 "/VirtualHostBase/http/www.mysite.com:80/mysiteid/VirtualHostRoot/myrequest/..." running in thread 1133545792 since 10.7206499577s
Python call stack (innermost first)
  ...
  lot of lines, depends on Python traceback
  ...
  Module ZPublisherEventsBackport.patch, line 80, in publish
  Module ZPublisher.Publish, line 202, in publish_module_standard
  Module ZPublisher.Publish, line 401, in publish_module
  Module ZServer.PubCore.ZServerPublisher, line 25, in __init__
<BLANKLINE>

该实用工具将帮助您解析长时间运行请求并收集一些统计数据。

如何使用

用法:zope_lrr_analyzer [选项] 日志文件 [日志文件…]

使用haufe.requestmonitoring条目分析Zope实例日志

选项
--version

显示程序版本号并退出

-h--help

显示此帮助信息并退出

-s START_FROM--start=START_FROM

从给定日期/时间开始分析(格式如“YYYY-MM-DD HH:MM:SS”)

-e END_AT--end=END_AT

在给定日期/时间停止分析(格式如“YYYY-MM-DD HH:MM:SS”)

-l LOG_SIZE--log-size=LOG_SIZE

仅保留一定数量的慢速请求。默认无限制。

-i INCLUDE_REGEX--include=INCLUDE_REGEX

一个正则表达式,调用路径必须匹配或将被丢弃。可多次调用,扩大集合

-t TRACEBACK_INCLUDE_REGEX--traceback-include=TRACEBACK_INCLUDE_REGEX

一个正则表达式,Python跟踪信息必须匹配或将被丢弃。可多次调用,扩大集合

-r--keep-request-id

使用请求和线程ID将每个匹配项作为不同的条目处理

结果

让我们解释一下结果

Stats from 2012-11-14 00:02:07 to 2012-11-15 09:55:41 (347 LRR catched)
...
----
2 /VirtualHostBase/http/yoursite.com:80/siteid/VirtualHostRoot/foo/bar
    25 - 3654.05561542 (1:00:54.055615) - from 2012-11-15 07:48:10 to 2012-11-15 08:45:29

----
1 /VirtualHostBase/http/yoursite.com:80/siteid/VirtualHostRoot/baz
    77 - 16029.3731236 (4:27:09.373124) - from 2012-11-15 07:43:55 to 2012-11-15 08:45:30

您将获得慢速请求路径的排名(最快的是排名第一,最慢的是排名最后)。顺序是通过收集到同一路径的所有请求并获取总时间来完成的。

这意味着一个只调用一次且需要30秒的请求比另一个只调用10次且只需要10秒的路径要快(30x1 < 10x10)。

如果您还使用了--keep-request-id选项,每个请求都被视为一个单独的条目,因此输出略有变化

Stats from 2012-04-27 00:02:07 to 2012-04-27 16:55:41 (347 LRR catched)
...
----
2 /VirtualHostBase/http/yoursite.com:80/siteid/VirtualHostRoot/foo/bar
    1510.2860291 (0:25:10.286029) - from 2012-09-19 08:36:27 to 2012-09-19 09:01:22

----
1 /VirtualHostBase/http/yoursite.com:80/siteid/VirtualHostRoot/baz
    1750.49365091 (0:29:10.493651) - from 2012-09-19 08:30:34 to 2012-09-19 09:00:58

单条记录含义

每个条目都会提供这类数据

Entry position                       Called path
     |                                   |
     1 /VirtualHostBase/http/yoursite.com:80/siteid/VirtualHostRoot/...
         15 - 171.913325071 (0:02:51.913325) - from 2012-09-19 08:30:34 to 2012-09-19 09:00:58
         |         |                |                       |                       |
     Times called  |      Time needed (human readable)      |                       |
                   |                                        |              Slow request end date
          Time needed (in seconds)                Slow request start date

当使用--keep-request-id

Entry position                       Called path
     |                                   |
     1 /VirtualHostBase/http/yoursite.com:80/siteid/VirtualHostRoot/...
         1750.49365091 (0:29:10.493651) - from 2012-09-19 08:30:34 to 2012-09-19 09:00:58
             |              |                           |                      |
 Time needed (in seconds)   |                 Slow request start date          |
                            |                                                  |
                   Time needed (human readable)                       Slow request end date

请注意,“所需时间”信息是机器计算时间。

作者

此产品由RedTurtle技术团队开发。

RedTurtle Technology Site

变更日志

0.5 (2016-06-13)

  • 显示捕获的LRR总计数信息

  • 现在可以使用-s-e作为日期字符串(不需要时间)

0.4 (2012-12-06)

  • 添加了--traceback-include选项

0.3 (2012-11-15)

  • 始终显示请求的开始和结束日期(不仅当-r选项给出时)

0.2 (2012-09-19)

  • 添加了--keep-request-id选项

  • 还存储(如果给出-r选项则显示)开始和结束请求时间

0.1 (2012-04-27)

  • 首次发布

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

zope_lrr_analyzer-0.5.tar.gz (6.5 kB 查看哈希值

上传于 来源

支持者