TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Amon - Python-powered server monitoring, logging, error reporting with JSON API

76 pointsby jemeshsuover 13 years ago

4 comments

antoncohenover 13 years ago
At first I was really excited about this, I've spent the last couple days thinking about how I would architect a similar setup. Integration of monitoring, trending, and logging. Good graphing without rrdtool. Looks good. Digging deeper I see issues.<p>The free version is single server (monitors itself) and doesn't have alerting. Monitoring without alerting has its uses, but that's not what I'm looking for. Also, single server isn't what I want. There appears to be a planned payed version that supports multiple servers and alerting (check the page source for a link).<p>In a previous HN discussion of Amon (<a href="http://news.ycombinator.com/item?id=3313991" rel="nofollow">http://news.ycombinator.com/item?id=3313991</a>) it was mentioned that the install script had errors. Looking at the install script was the first thing I did. It's kind of insane. It's the kind of thing it might be OK to do on your own servers, but asking others to run it is really dangerous.<p>The installer starts off by running "type dpkg &#38;&#62; /dev/null". If that exits cleanly is downloads a Debian version of the installer and executes it. If type doesn't exit cleanly it does the same check from rpm and runs the rpm version of the installer. dpkg is available in the standard Fedora repository. rpm is available in the standard Debian repositories. /etc/debian_version and /etc/redhat-release might be a better check.<p>The installer goes on to download binaries on MongoDB and install them in /usr/local/mongodb. It puts the mongo client in /usr/bin. Does "apt-get install mongodb" not work? It consistently does "tar -zxvf filename.tar.gz &#62; /dev/null". tar -v is verbose, why direct verbose output to /dev/null? The init scripts <i>are</i> the client and server, written in python. It works but that's odd, I want my executables in bin or sbin.<p>There seems to be a general lack of systems understanding, which is not what I want from a system monitoring tool.<p>If you are looking for server to accept and store application logs, check out logstash (<a href="http://logstash.net/" rel="nofollow">http://logstash.net/</a>). It will accept pretty much any non-binary input on any protocol, convert it to JSON, and output it to pretty much any storage system using any protocol. E.g., input AMPQ -&#62; output Redis, or input syslog -&#62; output MongoDB. In includes graphing and searching of your logs if you use the default output storage.
评论 #3556627 未加载
sciurusover 13 years ago
Discussion from two months ago- <a href="http://news.ycombinator.com/item?id=3313991" rel="nofollow">http://news.ycombinator.com/item?id=3313991</a>
IgorPartolaover 13 years ago
I wonder why they didn't use SNMP instead. It seems to be the standard for this type of thing.
评论 #3556329 未加载
评论 #3556174 未加载
someone13over 13 years ago
Pretty cool! Does anyone here have any "real-world" experience with this?