将rsync守护进程日志导出为infloxdb timeseries

rsyncstats的Python项目详细描述


rsyncstats

解析rsync服务器日志,计算统计数据并存储在infloxdb中。

安装

RingServerStats作为一个通用轮分布在Pypihttps://pypi.org上。

    $ pip install rsyncstats

infloxDB配置

这个程序将填充2个测量值。您应该为这些配置一个数据库,并为用户配置写权限。

准备数据库

首先,创建数据库、用户和保留策略。

createdatabasersyncdbcreateuserrsyncwithpassword'rsyncer'grantwriteonrsyncdbtorsyncgrantreadonrsyncdbtorsynccreateretentionpolicyrp_rsynceventsonrsyncduration1wreplication1createretentionpolicyrp_rsyncstatsonrsyncduration520wreplication1

用法

要正常工作,此程序需要设置以下环境变量:

  • INFLUXDB_HOST:infloxdb服务器的主机名或地址
  • INFLUXDB_PORT:infloxdb服务器的端口号
  • INFLUXDB_USER:要向其进行身份验证的infloxdb用户
  • INFLUXDB_PASS:要验证的密码
  • INFLUXDB_DB:包含度量的数据库名称
  • INFLUXDB_VERIFY_SSL:设置为yesno以验证ssl连接
  • INFLUXDB_SSL:连接应该转到https吗?
$ ringserstats txlogs.log

解释

rsync中的日志是适合时间序列数据库的度量。其思想是解析日志,如下面的示例所示,并生成值以插入infloxdb timeseries数据库。

可以将文件grafana-dashboard.json导入grafana以可视化此时间序列。

infloxDB中使用的标记:

showtagkeysfromrsynceventsshowtagkeysfromrsyncstats

rsyncevents度量值有几个标记:

  • 模块:传输期间的rsync模块访问
  • geohash:geohash格式的客户端位置
  • hosthash:客户端IP的哈希(用于关联客户端请求)
  • 城市:英文城市名

由于长期存储事件不是很相关,因此rsyncstats度量按天、按主机和按网络对所有事件进行分组。上面描述的保留策略将管理数据存储在infloxdb中的时间。

许可证

rsyncstats根据gpl v3或更高版本的条款分发。请参阅许可证文件。

构建

python3 setup.py sdist bdist_wheel

测试

tox

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

推荐PyPI第三方库


热门话题
java使用jstl比较jsp中的日期对象   java JSF convertDateTime渲染前一天   java当重定向回另一个servlet时,如何显示错误消息?   当ulimit已更改为unlimit时,java无法增加Wildfly的“最大打开文件数”   Java和SWT:线程和侦听器   Java文件API跨网络复制文件   java如何使用闹钟。安卓系统中的动作\解除\警报   java无法将BLOB保存到数据库(ORA01460:未实现或不需要有意义的转换)   这个for循环的java复杂性   多行上的java正则表达式   spring mvc Java多URL模式,无扩展   java 安卓 json向文本添加超链接   Java泛型和转换   JavaSpringFramework。数据存储库。反应性。反应性积存。save()在从CompletableFuture调用时不持久化数据。运行异步   java ValidationException:调用TraversableResolver。isReachable()引发了异常   java将位图设置为具有特定高度的ImageView   Java:限制字符串中的字符   如何在java中将字节[]类型转换为证书类型?   javascript使用基于java的逻辑编写TinyMCE自定义插件