包来统计ELK日志中的使用情况统计信息。
vuakhter的Python项目详细描述
瓦克特
Vuakhter是测试API以符合我们的 API guide。 但它可以通过日志生成web应用程序的统计信息。在
工作原则
Vuakhter扫描指定时间段的访问日志,按路径前缀筛选日志条目 并传递每个条目以生成统计信息。在
基类AccessLog
返回日志项的迭代器。类ElasticAccessLog
扫描弹性索引以查找日志条目。在
StatisticsMetrics
获取{StatisticsMetrics.report() -> str
返回度量的统计报告。在
HttpAnalyzer
使用access_log: AccessLog
和{
在主脚本中,只有一个度量SchemaValidatorCounter
传递给HttpAnalyzer
vuakhter
。它使用request_log: RequestLog
来验证API响应。在
类ElasticRequestLog: RequestLog
按请求标识扫描弹性索引请求
并返回RequestEntry
的数组。SchemaValidatorCounter
检查所有响应
主体和计数有效的API调用。在
安装
pip install vuakhter
使用
^{pr2}$默认情况下,结束日期为当前日期和时间(如果未指定)。开始约会 默认为前一天结束日期。在
所有连接参数都可以在.env文件中指定。在
ES_USER=elastic ES_PASS=pasword ES_HOST=localhost vuakhter /api/
在代码
中使用importdatetimefromelasticsearchimportElasticsearchfromvuakhter.analyzerimportHttpAnalyzerfromvuakhter.kibana.access_logimportElasticAccessLogfromvuakhter.metrics.countersimportComplexCounterelastic=Elasticsearch()access_log=ElasticAccessLog(index_pattern='filebeat-*',client=elastic)http_analyzer=HttpAnalyzer(access_log=access_log)http_analyzer.add_metrics(ComplexCounter())end_date=datetime.datetime.now()start_date=end_date-datetime.timedelta(days=1)http_analyzer.analyze(start_date,end_date)formetricinhttp_analyzer.metrics:metric.finalize()print(metric.report())
贡献
我们希望你能为我们的项目作出贡献。很简单:
- 用你发现的错误或者你的建议来创建一个问题。 等待维护人员的批准。在
- 创建拉取请求。确保所有的支票都是绿色的。在
- 修正评审意见(如果有的话)。在
- 太棒了。在
以下是一些有用的提示:
- 您可以使用
make check
运行所有检查和测试。请这样做 在特拉维西之前。在 - 我们使用 BestDoctor python styleguide。在
- {我们尊重}。 温柔点,不要胡扯。在
- 项目
标签: