您在使用Logtail採集日誌時,需要根據原始日誌的時間字串配置時間格式,Logtail會提取原始日誌中的時間字串並解析為Unix時間戳記。本文介紹常見的時間格式及樣本。
常見日誌時間格式
Logtail支援的常見日誌時間格式如下表所示。
預設情況下,Log Service中的日誌時間戳記精確到秒,所以時間格式只需配置到秒,無需配置毫秒、微秒等資訊。
如果原始日誌中的時間欄位具備更高的時間精度(毫秒、微秒或納秒),並希望在Log Service中保留該時間精度,請參見Logtail日誌採集支援納秒精度時間戳記。
只需為時間字串中的時間部分配置時間格式,其他內容(例如時區)無需配置。
在Linux伺服器中,Logtail支援strftime函數提供的所有時間格式。即能被strftime函數格式化的日誌時間字串都能被Logtail解析並使用。
時間格式 | 說明 | 樣本 |
%a | 星期的縮寫。 | Fri |
%A | 星期的全稱。 | Friday |
%b | 月份的縮寫。 | Jan |
%B | 月份的全稱。 | January |
%d | 每月第幾天,十進位,範圍為01~31。 | 07, 31 |
%f | 秒的小數部分(毫秒、微秒或納秒) | 123 |
%h | 月份的縮寫,等同於%b。 | Jan |
%H | 小時,24小時制。 | 22 |
%I | 小時,12小時制。 | 11 |
%m | 月份,十進位,範圍為01~12。 | 08 |
%M | 分鐘,十進位,範圍為00~59。 | 59 |
%n | 分行符號。 | 分行符號 |
%p | AM或PM。 | AM、PM |
%r | 12小時制的時間組合,等同於%I:%M:%S %p。 | 11:59:59 AM |
%R | 小時和分鐘組合,等同於%H:%M。 | 23:59 |
%S | 秒數,十進位,範圍為00~59。 | 59 |
%t | Tab符號,定位字元。 | 無 |
%y | 年份,十進位,不帶世紀,範圍為00~99。 | 04、98 |
%Y | 年份,十進位。 | 2004、1998 |
%C | 世紀,十進位,範圍為00~99。 | 16 |
%e | 每月第幾天,十進位,範圍為1~31。 如果是個位元字,前面需要加空格。 | 7、31 |
%j | 一年中的天數,十進位,範圍為001~366。 | 365 |
%u | 星期幾,十進位,範圍為1~7,1表示周一。 | 2 |
%U | 每年的第幾周,星期天是一周的開始,範圍為00~53。 | 23 |
%V | 每年的第幾周,星期一是一周的開始,範圍為01~53。 如果一月份剛開始的一周>=4天,則認為是第1周,否則認為下一個星期是第1周。 | 24 |
%w | 星期幾,十進位,範圍為0~6,0代表周日。 | 5 |
%W | 每年的第幾周,星期一是一周的開始,範圍為00~53。 | 23 |
%c | 標準的日期和時間。 | Tue Nov 20 14:12:58 2020 |
%x | 標準的日期,不帶時間。 | 08/19/2020 |
%X | 標準的時間,不帶日期。 | 11:59:59 |
%s | Unix時間戳記。 | 1476187251 |
樣本
常見的時間標準、樣本及對應的時間運算式如下所示。
樣本 | 時間運算式 | 時間標準 |
2017-12-11 15:05:07 | %Y-%m-%d %H:%M:%S | 自訂 |
2017-12-11 15:05:07.123 | %Y-%m-%d %H:%M:%S.%f | 自訂 |
[2017-12-11 15:05:07.012] | [%Y-%m-%d %H:%M:%S] | 自訂 |
02 Jan 06 15:04 MST | %d %b %y %H:%M | RFC822 |
02 Jan 06 15:04 -0700 | %d %b %y %H:%M | RFC822Z |
Monday, 02-Jan-06 15:04:05 MST | %A, %d-%b-%y %H:%M:%S | RFC850 |
Mon, 02 Jan 2006 15:04:05 MST | %A, %d %b %Y %H:%M:%S | RFC1123 |
2006-01-02T15:04:05Z07:00 | %Y-%m-%dT%H:%M:%S | RFC3339 |
2006-01-02T15:04:05.999999999Z07:00 | %Y-%m-%dT%H:%M:%S | RFC3339Nano |
1637843406 | %s | 自訂 |
1637843406123 | %s | 自訂(Log Service以秒級精度處理) |