UNIFORM_LOG_TIMESTAMP_FORMAT – トレース・ファイル内のタイムスタンプ書式を統一する
対応バージョン
Oracle Database 12.2 -
2017-04-02記事公開
12cR2よりアラートログを含むトレース・ファイルのタイムスタンプ書式がデフォルトで変更されています。
UNIFORM_LOG_TIMESTAMP_FORMAT初期化パラメータにより旧バージョンと同様の書式に戻すことが出来ます。
パラメータ説明
初期化パラメータ: UNIFORM_LOG_TIMESTAMP_FORMAT
項目 | 値 |
---|---|
パラメータ・タイプ | 文字列 |
構文 | UNIFORM_LOG_TIMESTAMP_FORMAT = { true | false } |
デフォルト値 | true |
Oracle RAC 適用 | 複数インスタンスには同じ値を使用する必要がある。 |
オンライン変更 | 不可(再起動が必要です) |
Oracle(R) Databaseリファレンス 12cリリース2 (12.2)パラメータ値の説明
E72905-02
https://docs.oracle.com/cd/E82638_01/REFRN/UNIFORM_LOG_TIMESTAMP_FORMAT.htm
- ・true トレース・ファイルのタイムスタンプが全て共通の書式となります。ミリ秒の精度で世界標準時に標準化されます。
- ・false 一部のタイムスタンプはローカル時間を示すため、異なる精度及び表示のタイムスタンプが混在します。
変更手順
以下ではtrueからfalseへ変更することで、トレース・ファイルの日付書式を旧バージョンと同じ書式にしています。
SQL*Plusにログイン後、以下のコマンドを実行します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
$ sqlplus / as sysdba SQL> -- 以下にて使用しているspfileのパスが出力される場合はSPFILEを使用しています。 SQL> show parameter spfile SQL> SQL> set line 120 pages 1000 trim on SQL> col name for a30 SQL> col value for a20 SQL> col sid for a10 SQL> -- 現在値の確認 SQL> select INST_ID, NAME, VALUE from gv$parameter where name in ('uniform_log_timestamp_format'); SQL> -- SPFILEの内容の確認 SQL> select SID, NAME, VALUE from gv$spparameter where name in ('uniform_log_timestamp_format'); SQL> -- 値の変更 SQL> ALTER SYSTEM SET uniform_log_timestamp_format = false SCOPE=SPFILE; SQL> -- 変更値の確認(再起動まで変更されません) SQL> select INST_ID, NAME, VALUE from gv$parameter where name in ('uniform_log_timestamp_format'); SQL> -- SPFILEの内容の確認 SQL> select SID, NAME, VALUE from gv$spparameter where name in ('uniform_log_timestamp_format'); SQL> ---------------------------------------------------------------- SQL> -- 値反映のため、再起動 SQL> shutdown immediate SQL> startup SQL> -- 変更値の確認 SQL> select INST_ID, NAME, VALUE from gv$parameter where name in ('uniform_log_timestamp_format'); |
コメント
アラートログのタイムスタンプ書式が変わっているため、ログ監視などのスクリプトで、日付部分の操作やawkコマンドによるカラム数の変化などにお気を付けください。