废话不多说,先上git地址 https://github.com/binking338/Metrics.Reporters.ZabbixReporter

实现了Metrics.NET到Zabbix的报表插件,能够在非常有限的代码配置下自动将所有的Metrics度量数据全部report到zabbix服务器上,支持自动创建zabbix的template、item。

接口

/// <summary>
/// 数据导出至Zabbix服务器
/// Zabbix服务配置读取至ZabbixApi的配置文件
/// </summary>
/// <param name="reports"></param>
/// <param name="timeInterval">上报时间间隔</param>
/// <returns></returns>
public static MetricsReports WithZabbix(this MetricsReports reports, TimeSpan timeInterval) /// <summary>
/// 数据导出至Zabbix服务器
/// </summary>
/// <param name="reports"></param>
/// <param name="template">Zabbix模板</param>
/// <param name="timeInterval">上报时间间隔</param>
/// <returns></returns>
public static MetricsReports WithZabbix(this MetricsReports reports, string template, TimeSpan timeInterval) /// <summary>
/// 数据导出至Zabbix服务器
/// </summary>
/// <param name="reports"></param>
/// <param name="host">Zabbix服务IP地址</param>
/// <param name="port">Zabbix服务端口</param>
/// <param name="user">Zabbix管理端用户账户</param>
/// <param name="password">Zabbix管理端用户密码</param>
/// <param name="timeInterval">上报时间间隔</param>
/// <returns></returns>
public static MetricsReports WithZabbix(this MetricsReports reports, string host, int port, string user, string password, TimeSpan timeInterval) /// <summary>
/// 数据导出至Zabbix服务器
/// </summary>
/// <param name="reports"></param>
/// <param name="host">Zabbix服务IP地址</param>
/// <param name="port">Zabbix服务端口</param>
/// <param name="user">Zabbix管理端用户账户</param>
/// <param name="password">Zabbix管理端用户密码</param>
/// <param name="template">Zabbix模板</param>
/// <param name="timeInterval">上报时间间隔</param>
/// <returns></returns>
public static MetricsReports WithZabbix(this MetricsReports reports, string host, int port, string user, string password, string template, TimeSpan timeInterval)

示例

使用代码配置

Metric.Config.WithReporting(config => config
.WithZabbix("myZabbixServer", , "Admin", "zabbix", "myZabbixServer", TimeSpan.FromSeconds())
);

使用配置文件(App.config/Web.config)

代码:

Metric.Config.WithReporting(config => config
.WithZabbix(TimeSpan.FromSeconds())
);

配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!--metrics的全局上下文名称,如接口中未传入template参数,该值被用作模板名称-->
<add key="Metrics.GlobalContextName" value="globalContextName"/>
<!--zabbix服务器主机名/IP,如配置了 ZabbixApi.url 该配置可选-->
<add key="Zabbix.host" value="myZabbixServer"/>
<!--zabbix服务端口,默认10051-->
<add key="Zabbix.port" value="10051"/>
<!--zabbix管理端API地址-->
<add key="ZabbixApi.url" value="http://myZabbixServer/zabbix/api_jsonrpc.php" />
<!--zabbix管理端用户名称,不提供将不会自动创建template和item-->
<add key="ZabbixApi.user" value="Admin" />
<!--zabbix管理端用户密码-->
<add key="ZabbixApi.password" value="zabbix" />
</appSettings>
</configuration>
 

Metrics.NET report to Zabbix的更多相关文章

  1. Metrics.NET源码阅读笔记

    概述 Metrics.NET提供的是度量工具,他是移植自Java的metrics.Metrics将度量抽象成Gauges,Counters,Histograms,Meters,Timers五种.基于这 ...

  2. 使用 Zabbix 监控 Jenkins

    笔者最近的工作涉及到使用 Zabbix 监控 Jenkins.在谷歌上搜索到的文章非常少,能操作的就更少了.所以决定写一篇文章介绍如何使用 Zabbix 监控 Jenkins. 下图为整体架构图: 整 ...

  3. 理解metrics.classification_report

    混淆矩阵是一个矩阵,类别个数可以有多个,a[i][j]表示将类别i的样本误判为类别j的个数. classification_report用来分析不同类别的准确率,召回率,F1值等,从而便于按照类别查看 ...

  4. Zipline Risk and Performance Metrics

    Risk and Performance Metrics 风险和性能指标 The risk and performance metrics are summarizing values calcula ...

  5. 7 Java Performance Metrics to Watch After a Major Release--转

    原文地址:https://dzone.com/articles/7-java-performance-metrics-to-watch-after-a-major-1 The Java perform ...

  6. Understanding, Operating and Monitoring Apache Kafka

    Apache Kafka is an attractive service because it's conceptually simple and powerful. It's easy to un ...

  7. spark storage之SparkEnv

    此文旨在对spark storage模块进行分析,整理自己所看所得,等以后再整理. ok,首先看看SparkContext中sparkEnv相关代码: private[spark] def creat ...

  8. Spark 核心篇-SparkEnv

    本章内容: 1.功能概述 SparkEnv是Spark的执行环境对象,其中包括与众多Executor执行相关的对象.Spark 对任务的计算都依托于 Executor 的能力,所有的 Executor ...

  9. 创建Spark执行环境SparkEnv

    SparkDriver 用于提交用户的应用程序, 一.SparkConf 负责SparkContext的配置参数加载, 主要通过ConcurrentHashMap来维护各种`spark.*`的配置属性 ...

随机推荐

  1. 【linux】find命令详解

    find命令格式:find [搜索范围][匹配条件] -name 参数:按照名字查找 [root@andon ~]# find /root -name test ###精确查找 /root/test ...

  2. 【转】8张图理解Java

    一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选.如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟. 1.字符串不变性 下面这张图展示了这段代码做 ...

  3. 228. Summary Ranges

    Given a sorted integer array without duplicates, return the summary of its ranges. For example, give ...

  4. 黄聪:get_posts 函数 | wordpress

    get_posts 函数,简单的来讲是 get_post 的复数新形势,但因为是文章多篇提取,所以使用方法上却略有不同,支持众多参数选择需要提取的文章,在 CMS 主题中经常被用到,当然如果你对 Wo ...

  5. fork()详解

    参照: http://blog.csdn.net/jason314/article/details/5640969 http://coolshell.cn/articles/7965.html

  6. (C# ) 解析XML。

    解析XML有很多方法,之前用专门写的XMLProcess 或XMLHelper 解析类.其实有个较简单的解析就是用Linq查询. 例如有如下XML <?xml version="1.0 ...

  7. You need to use a Theme.AppCompat theme

    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.dji.sdk.sample/com.dji.sdk.sa ...

  8. Java利用MessageDigest提供的MD5算法加密字符串或文件

    MD5是常用的加密算法,也经常用于校验信息完整,如文件的完整性.用术语讲,MD5是一种消息摘要算法(Message Digest Algorithm).另外还有一种常用的消息摘要算法SHA1.如果想了 ...

  9. poj 2104 K-th Number(主席树 视频)

    K-th Number 题意: 给你一些数,让你求一个区间内,第k大的数是多少. 题解: 主席树第一题,看的qsc视频写的,戳戳戳 学到了unique函数,他的作用是:把相邻的重复的放到后面,返回值是 ...

  10. cmd命令行给main传参数

    int main(int argc, char **argv) { cout << "arguments passed to main() : " << e ...