postgres のドキュメントにコメントされている指示に従ってログを CSV 形式で作成し、対応するフィールドを含むテーブルをデータベースに作成します ( http://www.postgresql.org/docs/9.0/static/runtime -config-logging.html#RUNTIME-CONFIG-LOGGING-CSVLOG )
CSV の内容は次のようになります。
2013-11-07 23:07:31.524 CET,"postgres","postgres",5556,"::1:62188",527c0f1e.15b4,1,"idle",2013-11-07 23:07:26 CET,2/23,0,LOG,00000,"sentencia: DROP TABLE public.mytable",,,,,,,,,"pgAdmin III - Browser"
しかし、COPY 命令を実行すると、次のようになります。
COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv;
タイプ タイムスタンプとタイム ゾーンの構文が無効であることを示すエラーが発生します。
ERROR: la sintaxis de entrada no es válida para tipo timestamp with time zone: «2013-11-07 23:04:59.124 CET»
CONTEXT: COPY postgreslog, línea 1, columna log_time: «2013-11-07 23:04:59.124 CET»
********** Error **********
ERROR: la sintaxis de entrada no es válida para tipo timestamp with time zone: «2013-11-07 23:04:59.124 CET»
SQL state: 22007
Context: COPY postgreslog, línea 1, columna log_time: «2013-11-07 23:04:59.124 CET»
たとえば PgAdminIII を使用してレジストリを直接挿入し、「log_time」列の値として「2013-11-07 23:07:31.524 CET」を設定すると、正しく挿入されます。
何が起こっているか知っている人はいますか?
どうもありがとう。