您可以在 Looker「管理」選單的「記錄」頁面中,查看及篩選執行個體產生的最新 500 則系統記錄訊息。您也可以為個別 Looker 服務設定最低嚴重性等級,排解應用程式事件問題,並控管記錄中顯示的訊息。
記錄面板
「記錄」面板會顯示 Looker 執行個體產生的 500 則最新系統記錄訊息。如要查看「記錄」頁面,請在「管理」選單的「伺服器」部分中選取「記錄」。
您可以限制「記錄」面板中顯示的資訊。如要這麼做,請在「篩選」欄位中輸入文字,記錄面板就會只顯示包含該文字的訊息。
如要更新記錄並顯示最近 500 則訊息,請選取「重新整理記錄」。
如要調整 Looker 服務顯示的記錄訊息嚴重性等級,請調整記錄層級。
記錄層級
在「記錄層級」部分,您可以設定訊息顯示在記錄中的最低嚴重性等級,適用於多項 Looker 服務。這樣一來,您就能隱藏不感興趣的記錄資訊。
db:* 和 db:looker 服務的預設嚴重性等級設為 info,這表示 Looker 會記錄包含或篩選個人資訊 (例如客戶姓名) 的 SQL 陳述式。如果嚴重性設定為 info、verbose 或 debug,就會發生這種情況。如要關閉 SQL 陳述式記錄功能,請將 db:* 和 db:looker 服務的嚴重性等級設為 warn、error 或 fatal。
Looker 會將 SQL 陳述式記錄到內部資料庫 (儲存使用者建立的 Looker 物件中繼資料) 和外部資料庫 (儲存客戶資料和中繼資料)。
嚴重性說明
以下是記錄訊息嚴重性等級,從最不嚴重到最嚴重:
debug:偵錯記錄項目是詳細的資訊訊息,會顯示 Looker 的內部應用程式程序。這個嚴重性等級通常僅用於偵錯內部程式碼。
verbose:這些是詳細的資訊訊息,會以更精細的層級顯示 Looker 中發生的事件。這個嚴重程度通常只用於疑難排解。
資訊:這些是標準資訊訊息,顯示 Looker 中發生的一般事件。
warn:這類訊息表示可能有害的情況。
錯誤:這些訊息表示錯誤事件,但可能不夠嚴重,不會導致 Looker 停止執行。
嚴重:這類訊息表示發生非常嚴重的錯誤事件,可能會導致 Looker 停止運作。
服務說明
「Default」(預設) 下拉式選單可設定所有 Looker 服務的預設嚴重性等級。凡是設為「預設」的服務,都會採用「預設」下拉式選單中的嚴重性等級。「Default」(預設) 下拉式選單的預設嚴重性等級為「info」(資訊)。
您也可以為下列服務分別設定嚴重性等級:
pdt:與永久衍生資料表程序相關聯的訊息。
db:*:查詢分析資料庫或任何客戶資料庫時產生的訊息。
db:looker:查詢 Looker 後端資料庫時產生的訊息。
http:前端網路伺服器接收或處理 HTTP 要求時產生的訊息。
http_core:從 HTTP 要求產生至核心網路伺服器的訊息,用於提供應用程式內部。
jsch:透過 SSH 連線至 Git 服務時產生的訊息。預設設定為「警告」層級,不會顯示任何資訊。將記錄層級變更為「info」,排解 SSH 連線問題。
logger:變更記錄層級時產生的訊息。
org.apache.active:ActiveMQ 產生的訊息。ActiveMQ 是 Looker 用來在子系統之間傳達工作的訊息服務。排程器、PDT 重新產生作業和其他長時間執行的工作都會使用這個名稱。
raven:Error Reporting 服務產生的訊息。
render:由轉譯器產生的訊息,用於轉譯 PDF 和 PNG。
scheduler:排程器程序產生的訊息。
修改服務的記錄層級後,請選取「設定層級」來儲存變更。
在客戶託管的執行個體上設定記錄格式
根據預設,系統訊息會以文字顯示,格式如下:
2019-09-25 15:14:12.301 -0700 [INFO|007d0|main] :: Starting Looker : Version 6.21.0-localdev-ea88a4
...
2019-10-01 14:37:53.424 -0700 [INFO|0002a|http] :: Request from 0:0:0:0:0:0:0:1 GET /folders/1, {}
...
2019-10-01 14:37:53.425 -0700 [INFO|0002a|db:looker] :: (0.000180s) SELECT count(*) AS "COUNT" FROM "USER" LIMIT 1
部分系統訊息 (例如例外狀況和 SQL 查詢) 會產生多行輸出內容。這可能會導致記錄處理器發生問題,因為這類處理器需要單行項目才能進行模式比對。
如果您的 Looker 執行個體是由客戶託管,且您需要單行輸出,可以使用 --log-format=json 啟動選項,將記錄項目格式化為單行 JSON 結構。以下範例顯示與上一個範例相同的事件,但採用 JSON 格式:
{"t":"2019-09-25 15:14:56.513 -0700","s":"INFO","rid":"007d0","c":"main","msg":"Starting Looker : Version 6.21.0-localdev-ea88a4"}
...
{"t":"2019-10-01T14:35:37.577 -07:00","s":"INFO","rid":"0002c","c":"http","ip":"0:0:0:0:0:0:0:1","verb":"GET","path":"/folders/1","params":{}}
...
{"t":"2019-10-01T14:35:37.581 -07:00","s":"INFO","rid":"0002c","c":"db:looker","duration":"0.000344","sql":"SELECT count(*) AS \"COUNT\" FROM \"USER\" LIMIT 1"}