【问题标题】:Log exceptions from .NET application to zabbix将 .NET 应用程序的异常记录到 zabbix
【发布时间】:2014-02-21 15:14:58
【问题描述】:

我正在努力做到这一点:

当 webapp 产生异常时,我想通过它的 api 将异常记录到 zabbix。

浏览 api 和互联网,我没有发现任何有用的东西。

我不想使用 zabbix_sender,我只想对 api 进行 POST 调用。

【问题讨论】:

    标签: c# .net zabbix


    【解决方案1】:

    您不能使用zabbix API提交监控数据。您需要使用与 zabbix_sender 相同的协议。如果我没记错的话,它是仅基于最新版本的 zabbix sever 的 json,但无论如何你最好使用 zabbix 2.0。该协议是基于 TCP 套接字的发送,我不能说任何关于 .net 的信息,但 there are numerous implementations。对我来说最有用的是this one in python

    【讨论】:

    • 非常感谢您,先生 :)
    【解决方案2】:

    不确定我是否理解问题所在。我会把它分成2个:
    1. 拦截异常
    2. 使用 Zabbix 发送

    我对@9​​87654323@ 无能为力,因为我不熟悉“Zabbix”。但是,如果您需要拦截所有或未处理的异常,您可以注册到以下 AppDomain 事件:

    AppDomain.UnhandledException
    AppDomain.FirstChanceException

    您可以在初始化代码中执行注册(例如Global.asax):

    AppDomain.Current.UnhandledException += (s, args) => ... // Send using Zabbix
    

    【讨论】:

    • 感谢您的提醒,我知道如何捕获/记录异常。但是,我m also new to Zabbix, and i do not know how to send events to zabbix. Ussualy, zabbix connects to other machines to collect data, but i want to send data to zabbix server, when an exception occurs. Ive 阅读了它所有的 api 文档,但我无法找出我应该使用什么样的对象来记录我需要的内容
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-04
    • 1970-01-01
    • 2010-09-26
    • 2020-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多