【问题标题】:How to make zabbix monitor django apps on an apache server如何让 zabbix 在 apache 服务器上监控 django 应用程序
【发布时间】:2012-01-02 04:31:15
【问题描述】:

我在 Debian 下有一个 apache 服务器,它运行几个用 Python 编写的 RESTful 应用程序,带有 Django 和 Piston。这些应用程序使用 SQLAlchemy 从 MySQL 服务器访问数据。服务器由 Zabbix 监控,我已经有了线程运行、内存消耗等指标。但是有些事情需要更多的“内省”,比如活动数据库连接的数量和有关连接池的其他信息(最大和最小连接数等)。我搜索了网络和 SO,在这方面一无所获。我对 SQLAlchemy 了解不多(我只是用它来使 Django 支持连接池),它是否有公开所需信息的方法?如果是的话,可能我想要的应该很容易实现,因为有一个用于 Zabbix 访问的 Python 库。对实施有何建议?

【问题讨论】:

    标签: django sqlalchemy zabbix


    【解决方案1】:

    法比奥,

    我还使用 Python API 包装器进行部署自动化,但是 MySQLBix 似乎是为您提供所需内容的最轻松方式。

    • DBVersion(以及包的相对有效性)
    • 归档(有相对趋势的归档日志生产)
    • EventWaits(监控文件 I/O、单块读取、多块读取、直接路径读取、SQLNet 消息、控制文件 I/O、LogWrite)
    • HitRatio(监控触发器、表/过程、SQLArea、正文的命中率)
    • 逻辑 I/O(监控逻辑 I/O 值:当前读取、一致读取、块更改)
    • PGA
    • SGA(特别是:Fixed Buffer、Java Pool、Large Pool、Log Buffer、Shared Pool、Buffer Cache)
    • 物理 I/O(重做写入、数据文件写入、数据文件读取)
    • SharedPool(池字典缓存、池可用内存、库缓存、Sql 区域、其他)
    • 引脚命中率(监控触发器、表/过程、SQLArea、正文的命中率)
    • 会话/进程(监控会话和进程)
    • 会话(活动会话、非活动会话、系统会话)

    【讨论】:

    • 感谢 Joao,我知道 MySQLBix,但我正在考虑客户端数据库监控(特别是连接池运行状况)。服务器端监控很重要,但是当您遇到容量问题时,使用客户端指标来诊断导致问题的原因也很有用。就我而言,我可能有许多应用程序从同一台机器访问数据库,因此服务器在这种情况下不知道“谁是谁”,也无法将该信息发送到 Zabbix。
    • 此外,数据库连接并不是唯一值得了解的项目。当您有一个 RESTFul API 服务使用来自另一个可能是远程的 RESTful 服务的服务时,这就是另一个可能的监控点。
    • 据我所知,这些要求只能逐个完成,您必须在 REST 服务的每个实际 URI 上滚动您自己的 REST 脚本。我也不知道有任何 SQLAlchemy 监控助手..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    • 2019-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多