针对 https://github.com/garyelephant/pygrok/pull/3 的临时包
项目描述
pygrok 
一个用于解析字符串并从结构化/非结构化数据中提取信息的Python库
我能用Grok做什么?
解析和匹配字符串(日志、消息等)中的模式
从复杂正则表达式解脱出来。
从结构化/非结构化数据中提取信息
安装
$ pip install pygrok
或从这里下载,解压缩并安装pygrok
$ tar zxvf pygrok-xx.tar.gz
$ cd pygrok_dir
$ sudo python setup.py install
入门
>>> import pygrok
>>> text = 'gary is male, 25 years old and weighs 68.5 kilograms'
>>> pattern = '%{WORD:name} is %{WORD:gender}, %{NUMBER:age} years old and weighs %{NUMBER:weight} kilograms'
>>> print pygrok.grok_match(text, pattern)
{'gender': 'male', 'age': '25', 'name': 'gary', 'weight': '68.5'}
非常酷!您可以使用的一些模式列表如下
`WORD` means \b\w+\b in regular expression. `NUMBER` means (?:%{BASE10NUM}) `BASE10NUM` means (?<![0-9.+-])(?>[+-]?(?:(?:[0-9]+(?:\.[0-9]+)?)|(?:\.[0-9]+))) other patterns such as `IP`, `HOSTNAME`, `URIPATH`, `DATE`, `TIMESTAMP_ISO8601`, `COMMONAPACHELOG`..
查看所有模式 这里
更多信息
由于Python re模块不支持正则表达式原子分组(?>)语法,所以pygrok需要安装regex。
pygrok受到Jordan Sissel开发的Grok的启发。这并不是Jordan Sissel的Grok的包装器,而是完全由我实现的。
Grok是一款简单的软件,允许您轻松解析字符串、日志和其他文件。使用Grok,您可以轻松地将非结构化日志和事件数据转换为结构化数据。Pygrok做同样的事情。
我建议您查看logstash filter grok,它解释了Grok-like机制的工作原理。
贡献
获取帮助
mail:garygaowork@gmail.com twitter:@garyelephant
贡献者
感谢所有贡献者
项目详情
关闭
pygroker-0.1.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 90fb4995e0a6490bb429ff6b4b576095366977a1f9b6752eb303255203b9be6d |
|
MD5 | 9dd9e796da3814c468725a50d212116f |
|
BLAKE2b-256 | b95c2acbe37a13b7ed30c02a7b3aea9e16cee2d77fcf4083573d8b430463a152 |