Re: data dump help
От | Johan Nel |
---|---|
Тема | Re: data dump help |
Дата | |
Msg-id | hj3i4v$og9$1@news.eternal-september.org обсуждение исходный текст |
Ответ на | data dump help (Terry <td3201@gmail.com>) |
Ответы |
Re: data dump help
|
Список | pgsql-general |
Terry wrote: > Hello, > > Sorry for the poor subject. Not sure how to describe what I need > here. I have an application that logs to a single table in pgsql. > In order for me to get into our log management, I need to dump it out > to a file on a periodic basis to get new logs. I am not sure how to > tackle this. I thought about doing a date calculation and just > grabbing the previous 6 hours of logs and writing that to a new log > file and setting up a rotation like that. Unfortunately, the log > management solution can't go into pgsql directly. Thoughts? You do not indicate in your post, exactly how the data is stored, but I would assume there is a timestamp inside this single table. From my perspective there are 3 options available: Firstly, create a table that you can monitor when you have made dumps, typically with a column that will store a datetimestamp with now() in it. 1. You have access to the DB and you can schedule a pgAgent job to run every 6 hours that dumps the table into some usable format e.g. csv: SELECT Max(dumptimestamp) FROM dump_log INTO lastdump; currtime := now(); COPY (SELECT * FROM singletable WHERE timestamp > lastdump) TO 'someexternaltable' DELIMETER ',' CSV HEADER ...; INSERT INTO dumplog (dumptimestamp) VALUES (currtime); 2. Same as above but run this as a trigger on your dumplog table when you need a dump by inserting the current_datetime into the dumplog table that will trigger a process to export the data. 3. You have an application that have an option to insert the current datetimestamp into your dumplog table and then read the exported table after completion. HTH, Johan Nel Pretoria, South Africa.
В списке pgsql-general по дате отправления: