In this chapter we've built a simple device monitoring system. In doing so you learned about the SNMP protocol, as well as the data collecting and plotting libraries used with Python—RRDTool and the Jinja2 templating system. Important points to keep in mind:
• The majority of network-attached devices expose their internal counters using the SNMP protocol.
• Each such counter has a dedicated object ID assigned to it.
• The object IDs are organized in a tree-like structure, where tree branches are allocated to various organizations.
• RRDTool is a library that allows you to store, retrieve, and plot network statistical data.
• The RRD database is a round-robin database, which means it has a constant size, and new records push old records out when inserted.
• If you generate web pages, make use of the Jinja2 templating system, which allows you to decouple the functional code from the representation.
Was this article helpful?