Update What I mean is can I have multiple log files per database? Probably not but I was curious if there was anything possible like this out of the box with Postgresql or if you required a third party product or building your own app to do this.
I saw from another thread you can do this:
ALTER DATABASE your_database_name SET log_statement = 'all';
I was looking through the online documentation and I found this link for logging
log_filename (string) When logging_collector is enabled, this parameter sets the file names of the created log files. The value is treated as a strftime pattern, so %-escapes can be used to specify time-varying file names. (Note that if there are any time-zone-dependent %-escapes, the computation is done in the zone specified by log_timezone.) The supported %-escapes are similar to those listed in the Open Group's strftime specification. Note that the system's strftime is not used directly, so platform-specific (nonstandard) extensions do not work. The default is postgresql-%Y-%m-%d_%H%M%S.log.
If you specify a file name without escapes, you should plan to use a log rotation utility to avoid eventually filling the entire disk. In releases prior to 8.4, if no % escapes were present, PostgreSQL would append the epoch of the new log file's creation time, but this is no longer the case. If CSV-format output is enabled in log_destination, .csv will be appended to the timestamped log file name to create the file name for CSV-format output. (If log_filename ends in .log, the suffix is replaced instead.)
This parameter can only be set in the postgresql.conf file or on the server command line.
Boo, is there any way to set up logging for just a specific database on a server that anyone has ever tried?