views:

89

answers:

1

In building a web application (not built on any specific framework) I'd like to build a "complete" set of tools for monitoring it.

There are obviously some great tools out there for monitoring the DB or the Web Server, or App Server... but I'd like to build a dashboard that lets admin users monitor the overall health/status of the system.

I've noted the following things to monitor but I'm sure there is more that I may have overlooked.

For the record the app in question is built on a LAMP stack, and beyond the index page is only accessible to registered users (100 - 5,000?). Additional tables/logs either contain (or will contain) the data needed to report the following.

Items considered so far:

  • Users: (Active, Registered)
  • Business Objects: (counts.... e.g. # of contacts, # of accounts, # of managed services)
  • Registrations: (# of landings, # of signup attempts, # of signup successes, # of account removals)
  • Lost Password: (# of requests, and for which user)
  • Login attempts: (# of failures) (possibly userids to see if dictionary attacks are in progress)
  • Emails: (# sent (by the system/by users)) (e.g. catch if system becomes a spam engine)
  • HTTP 404 errors: (# of errors, which pages)
  • HTTP 500 errors:
  • Hits: (# of by IP/Referer, by page) (e.g. get a feel for any upcoming DOS attacks/slashdotting)
  • DB queries: (# of queries, # of tables)

What else is missing or would be helpful?

+1  A: 

Have some kind of bug-tracking system to log any errors or warnings that are called.

Evan Meagher