zoukankan      html  css  js  c++  java
  • Metrics.NET report to Zabbix

    废话不多说,先上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", 10051, "Admin", "zabbix", "myZabbixServer", TimeSpan.FromSeconds(5))
        );

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

    代码:

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

    配置文件:

    <?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>
     
  • 相关阅读:
    leetcode 190 Reverse Bits
    vs2010 单文档MFC 通过加载位图文件作为客户区背景
    leetcode 198 House Robber
    记忆化搜索(DP+DFS) URAL 1183 Brackets Sequence
    逆序数2 HDOJ 1394 Minimum Inversion Number
    矩阵连乘积 ZOJ 1276 Optimal Array Multiplication Sequence
    递推DP URAL 1586 Threeprime Numbers
    递推DP URAL 1167 Bicolored Horses
    递推DP URAL 1017 Staircases
    01背包 URAL 1073 Square Country
  • 原文地址:https://www.cnblogs.com/binking338/p/4831456.html
Copyright © 2011-2022 走看看