Indigo has the ability to log data into either SQLite databases (10.5 or greater) or PostgreSQL databases. You can choose to log device changes, variable changes, and/or event log data. The latter can generate quite a large amount of data, and the client doesn't attempt to delete any data, so you'll need to periodically purge data yourself.
In Indigo Pro on Leopard (10.5.x) systems, the SQLite libraries are built-in, so having Indigo log into a SQLite database is Simple:
Log Device state history to SQLite or PostgreSQL
option in the Start Local Server…
dialog from the Indigo 4
menu
Follow these directions to enable PostgreSQL logging. This How-to level of difficulty is Hard.