Maybe it's an idea to correct that in the manual, and maybe with a little example. The manual states:
TTMSLoggerAureliusOutputHandler (unit TMSLoggingAureliusOutputHandler)
The TTMSLoggerAureliusOutputHandler connects via an IDBConnectionPool to send logging
outputs to a dataset connected via Aurelius. The process of setting up a connection is simple
as demonstrated in the code below.
TMSLogger.RegisterOutputHandlerClass(TTMSLoggerAureliusOutputHandler,
[pool]);
and I believe that's exactly what I did. I also had to find out the hard way what the table in the database must look like. For other who read this: in PostgreSQL the sequence and table look like this:
CREATE SEQUENCE seq_tmslog_data START 1;
CREATE TABLE tmslog_data (
Id INTEGER NOT NULL DEFAULT nextval('seq_tmslog_data'::regclass),
Name TEXT,
Time_Stamp TEXT,
Process_ID TEXT,
Thread_ID TEXT,
Memory_Usage TEXT,
Log_Level TEXT,
Value TEXT,
Log_Type TEXT,
CONSTRAINT tmslog_data_id PRIMARY KEY (Id)
);
Logging to an Aurelius table does not supply the log_level, which is very inconvenient as it is the main criterium to search for problems.
It would also be very handy if there was a way to supply plain values to the Aurelius table (as they are in different columns) and formatted values to the text-outputs. Ideally the values could have a non-text format when they are non-text (e.g. process_id, thread_id, memory_usage, time_stamp), which is much more powerful in a database. At the moment I can only get formatted text, cut into pieces, in a table, not very handy.