pylon Event Logger#
目前,Event Logger 支援 Windows 10/11 64 位元與 Linux Ubuntu 22.04 64 位元作業系統。它可以擷取由 GigE、USB 3.0 和 CoaXPress 相機所記錄的事件,不過它已針對 CoaXPress 相機的最佳化進行調整。
Event Logger 作為搭配 pylon 使用的補充套件提供,或是整合至 Framegrabber SDK 安裝程式中。您可以從 Basler 網站下載這兩者。

使用者介面概覽#
功能表#
應用程式選單#
可使用下列指令:
- Settings:允許您開啟 Settings 對話方塊。
- 縮到最小至匣體: 允許您將 Event Logger 縮到最小。下方圖示會出現在資訊匣中,表示 Event Logger仍在執行中。按一下該圖示可將 Event Logger 還原為完整大小。
- Quit:允許您關閉 Event Logger。
Settings 對話方塊#

Settings 對話方塊允許您為 Event Logger 設定一般設定:
- Message View: 此設定只能在全新的作業階段 (session) 中變更。
- Max. number of messages in view:指定訊息檢視中顯示的訊息數量上限。
- File Settings: 這些設定只能在全新的作業階段中變更。
- File name prefix:作業階段資料夾以及在作業階段期間建立的記錄檔的前綴。您可以指定自己選擇的檔案名稱前綴,或保留預設前綴。
- Stop when file count and size limits are reached:如果啟用此選項,當達到指定的檔案數量和大小限制時,將停止擷取。否則,達到限制時將覆寫檔案。這可能意味著較舊的資料會遺失。
- Max. write file size [MB]:指定最大記錄檔大小(以 MB 為單位)。
- Max. supported active file count:指定最大檔案數量。
- Logging Source: 這些設定只能在暫停或完成擷取後變更。Event Logger 會透過 EltAppender 從來源應用程式擷取事件訊息,該應用程式使用網路連線將記錄資料傳輸至 Event Logger。EltAppender 可以透過 properties file.
您在這裡所做的任何變更將會在開始擷取時生效。- Port:用於連接到來源應用程式的網路連接埠。預設值為 12320。這必須與來源應用程式的屬性檔案中定義的連接埠相同。
- Host name / IP address:執行來源應用程式的主機之主機名稱 / IP 位址,您想從該應用程式擷取事件訊息。預設值為 localhost。
- Launch profile:決定由來源應用程式建立且可由 pylon Event Logger 擷取的事件訊息。請參閱以下章節以深入了解不同的 launch profiles。
Launch Profiles#
注意 – Launch profile 設定可能會影響來源應用程式的效能。
根據您設定屬性檔案的方式,Event Logger 可能會擷取大量資料,這可能會導致效能問題或對來源應用程式的回應時間產生負面影響。
特別是當從僅擷取少數記錄層級(例如 Factory)的 profile 切換到擷取較多記錄層級(例如 Analysis profile)的 profile 時,您可能會發現效能下降。
每個 launch profile 的背後都有一個包含不同記錄層級預設設定的 properties file。記錄層級定義了哪些訊息會從來源應用程式傳送至 pylon Event Logger。
按一下 Open Properties File 按鈕將帶您前往與您所選 launch profile 相對應的 properties file。
以下提供可用的 launch profiles:
- User:對於此 profile,您必須提供自己的屬性檔案。為確保記錄功能如預期運作,您必須將 PYLON_LOG_CONFIG 環境變數設定為有效且配置良好的屬性檔案。
- Default:如果您希望接收充足的資訊集同時維持良好的效能,Basler 建議使用此 launch profile。
- Analysis:擷取大部分的記錄層級。如果您想要接收有關來源應用程式的全面資訊,請選擇此 launch profile。請記住,這可能會對效能產生影響。
- Factory:記錄 FATAL、ERROR 和 WARN 訊息。選擇此啟動設定檔可確保良好的效能。請注意,這不會提供任何關於 NOTICE、INFO 或 DEBUG 日誌等級的資訊。
- Custom1:允許您根據需求自訂日誌等級。
- Custom2:允許您根據需求自訂日誌等級。
擷取選單#
可使用下列指令:
- Start:開始從執行中的來源應用程式擷取日誌訊息。
- Start and Launch Logging Source:允許您開啟要從中擷取事件訊息的來源應用程式,並使用目前選取的 launch profile 開始擷取。來源應用程式必須安裝在與 pylon Event Logger 相同的電腦上。
- Pause:暫停事件訊息的擷取。
- Open:允許您開啟儲存了事件訊息的檔案。這可以是工作階段檔案(.pel)或舊版檔案(.log 或 .txt)。
- Save:允許您將文字檔中擷取的事件訊息連同篩選設定檔以及工作階段一起儲存至您選擇的位置。預設資料夾名稱為 message file name_current date-current time。如需詳細資訊,請參閱 Saving Session Data 一節。
- Clear:清除工作階段,也就是刪除目前顯示在 message view 中的所有事件訊息。
檢視功能表#
可使用下列指令:
- Navigation View:開啟/關閉 navigation view。
- Activity View:開啟/關閉 activity view。
Navigation View#

導覽檢視可讓您指定將大型資料集的哪一部分載入至 message view 中。
此檢視主要適用於資料集極大、超出訊息檢視限制(500000 則訊息)的工作階段,或者當您已將訊息檢視設定為顯示較少訊息,但 Event Logger 正在擷取的訊息數量超過該設定時。
此檢視也提供涵蓋整個資料集的 global text search。這與只能搜尋目前載入訊息檢視中的訊息的 search feature 不同。
如果找到搜尋結果,其二進位位置會在檢視中以藍色標記,您可以將導覽檢視的橘色搜尋列移動到該區段。
這可讓您在大型資料集中識別出值得進行分析的重點區域。
使用 Scroll to End 按鈕,您可以跳至資料集訊息的結尾:
活動檢視#

活動檢視會針對您所選擇的時間基底,將顯示在訊息檢視中的所有事件訊息以圖表形式呈現。預設會顯示 WARN、ERROR 和 UNKNOWN 日誌等級。
您可以根據需要選取/取消選取要顯示的日誌等級。如果您想查看所有等級的所有項目,請勾選 ALL 核取方塊。日誌等級由高至低依序為 UNKNOWN(最高優先順序)至 DEBUG(最低優先順序)。
根據每則訊息的 Delta 時間,時間基底決定了擷取的事件訊息在活動檢視中的分組方式。Delta 時間以毫秒為單位。由於活動檢視最多只能顯示 1000 個項目,因此 Timebase 下拉式方塊中的某些選項可能無法使用。
Example:您將時間基底設為 1 s 且已擷取 1000 秒,也就是 Delta 時間為 1000。活動檢視會針對您擷取的每秒顯示一個刻度。如果您繼續擷取,將會超過 1000 個刻度的限制,且時間基底會自動切換至下一個最高選項,在此情況下為 15 秒。同時,1 秒選項將無法使用。
您可以透過按一下 Count 值大於零的圖表項目來瀏覽至訊息檢視項目。如果有多個記錄層級適用於特定項目 (且顯示多個記錄層級),按一下該項目會將您帶至訊息檢視中具有最高優先順序的訊息項目。
根據所選的時間基底,數個事件訊息可能屬於同一個圖表項目。如果是這種情況,按一下圖表項目會將您帶至最後發生的訊息。
說明功能表#
您可以檢視關於 Event Logger 的一般資訊並存取 Basler Product Documentation
工具列按鈕#
| 圖示 | 功能 |
|---|---|
| 開始擷取事件訊息。 | |
| 暫停擷取事件訊息。在暫停擷取期間從來源應用程式傳送的所有訊息都會遺失。 | |
| 允許您開啟記錄檔。 | |
| 將工作階段資料 (包含所有事件訊息、醒目提示與顯示篩選設定) 儲存至工作階段資料夾。 | |
| 清除訊息檢視中的所有訊息。 | |
| 開啟/關閉 導覽檢視。 | |
| 開啟/關閉 活動檢視。 | |
| 開啟 設定對話方塊。 | |
| 開啟文件。 |
訊息檢視#
訊息檢視是 Event Logger 的核心區域,用於顯示事件訊息。對於每則訊息,均提供下列詳細資訊:
- Timestamp
- 時間差
- Thread ID
- Source
- 記錄層級
- 訊息資訊
在 設定對話方塊 中,您可以設定可見的訊息數量,範圍從 5000 到 500000。對於包含更多特徵的資料集,您可以使用 導覽檢視的橘色搜尋列 來決定載入訊息的資料集相對位置。
捷徑功能表針對目前選取的列提供下列選項。
- 設定時間參考:允許您將目前選取的訊息指定為參考。所有其他訊息的時間差將以此為參考進行計算。
- 複製: 複製目前所選列的內容。若只需複製訊息的一部分,請按一下以下按鈕啟用文字選取功能: 選取文字 按鈕:
- 新增顯示過濾器: 根據您按一下滑鼠右鍵的表格儲存格(例如 Timestamp 或 Log Level)建立顯示過濾器。
- 新增突顯過濾器: 根據您按一下滑鼠右鍵的表格儲存格(例如 Timestamp 或 Log Level)建立突顯過濾器。
- 在活動檢視中顯示: 在活動檢視中選取事件訊息發生的時間點。
側邊欄按鈕#
訊息檢視具有一個側邊欄,提供多種用於管理訊息條目的工具。
| 圖示 | 功能 |
|---|---|
| 開啟/關閉用於顯示和突顯過濾器的過濾器列。 | |
| 開啟顯示過濾器對話方塊。 | |
| 開啟突顯過濾器對話方塊。 | |
| 開啟/關閉訊息檢視搜尋。 | |
| 允許您移至上一個搜尋結果。 | |
| 允許您移至下一個搜尋結果。 | |
| 允許您移至訊息檢視中的特定列。 | |
| 將Message Info 欄中的文字自動換行。 | |
| 允許您跳轉至最後一條訊息。如果您保持啟用自動捲動且有新的事件訊息到達,訊息檢視將會始終顯示最新的訊息。 | |
| 允許您將欄寬重設為預設值。 | |
| 允許您選取欄儲存格中的文字,以更輕鬆地複製文字片段。 |
狀態列#
您可以在狀態列中檢視以下資訊:
-
Event Logger 狀態
Status 含義 Capturing Event Logger 目前正在擷取訊息。 Paused 擷取已暫停。 Opened 日誌檔案已載入。 Cleared 先前的階段已清除。 儲存 正在將訊息儲存至檔案。 Opening 正在載入日誌檔案。 Loading 正在將大型日誌檔案的不同部分載入至訊息檢視中。 Searching 正在進行搜尋。 Filtering 正在過濾訊息。 -
訊息數量(已過濾/總計)
- 符合日誌級別 ERROR 的訊息數量
- 目前選取 啟動設定檔
您可以在擷取期間按一下目前的設定檔並選擇不同的設定檔來加以變更。
您也可以從狀態列開啟 notifications view。

如果資訊圖示為藍色,表示有未讀取的通知。若要開啟通知檢視,請按一下資訊圖示:
使用 pylon Event Logger#
您可以擷取來自與 Event Logger 執行於同一部電腦或網路中不同主機電腦之應用程式的事件訊息。為此,Event Logger 會使用 EltAppender,透過網路連線將日誌資料從來源應用程式傳輸至 Event Logger。EltAppender 可以透過 properties file 進行設定。
下載並安裝補充套件後,Event Logger 將可在 pylon Viewer 的 Tools 選單中使用。為了讓此功能正常運作,pylon Viewer 必須在 PYLON_LOG_CONFIG 環境變數已指向有效 properties file 的環境中啟動。

若要將 pylon Event Logger 與 Framegrabber SDK 搭配使用,請在 Framegrabber SDK installation 期間選取它。
擷取事件訊息#
有兩種方式可設定 EltAppender 並開始擷取事件訊息。
資訊
在您開始擷取之前,必須先使用工具列中的 清除工作階段 按鈕清除先前的工作階段:
-
EltAppender 的 Automatic configuration
- 在 Capture 選單中,選取 Start and Launch Logging Source。
- 在 Open 對話方塊中,選取您要從中擷取事件訊息之來源應用程式的可執行檔,然後按一下 Run。
隨即會開啟應用程式並立即開始擷取。
-
EltAppender 的 Manual configuration
- 將您的來源應用程式部署在您想要執行它的主機上。
- 如果主機是遠端電腦,請將包含日誌記錄設定的 properties file 複製到部署來源應用程式的遠端電腦上。
properties file 位於您使用者目錄中的這個資料夾:.pylonEventLogger
如果 Event Logger 和來源應用程式部署在同一部電腦上,則不需要這樣做。 - 在執行來源應用程式的電腦上,設定環境變數
PYLON_LOG_CONFIG使其指向包含日誌記錄設定的 properties file。 - 在您要接收事件訊息的電腦上啟動 Event Logger。
- 如果主機是遠端電腦,請開啟 Settings 對話方塊,並將 Port 和 Host name / IP address 設定變更為代管來源應用程式之遠端電腦的詳細資料。
如果 Event Logger 和來源應用程式部署在同一部電腦上,則不需要這樣做。 - 按一下 Capture > Start 開始擷取。
- 啟動您在第一步中部署的來源應用程式。
Event Logger 會連線至您的來源應用程式並開始擷取事件訊息。
開始擷取後,Event Logger 會在您的使用者目錄中建立一個名為 .pylonEventLogger 的資料夾。對於每個擷取工作階段,Event Logger 都會在這裡建立一個資料夾,其中包含一個記錄檔,記錄該工作階段中擷取到的所有事件訊息。預設資料夾名稱為 FileNamePrefix_current date-current time。您可以在 Settings 對話方塊中設定檔案和資料夾名稱前綴以及其他一般設定。
儲存工作階段資料#
如果您想要保留工作階段資訊(例如供稍後使用或與他人分享),可以儲存您的工作階段。
若要儲存您的工作階段:
- 按一下 Save 按鈕清除先前的工作階段:
-
選取要儲存工作階段的資料夾。
系統會建立一個名為 FileNamePrefix_current date-current time 的資料夾。其中包含下列檔案:- FileNamePrefix[n].txt: 記錄檔 n,包含所有已擷取的事件訊息
- displayFilterData.json: 包含顯示篩選條件設定
- highlightFilterData.json: 包含突顯篩選條件設定
- FileNamePrefix.pel: 工作階段檔案,包含所使用的篩選條件清單、所建立的記錄檔以及版本相容性資訊
透過開啟資料夾中的 .pel 檔案,您可以重新建立工作階段,並完整還原篩選條件和所有擷取的訊息。若要分享工作階段,只需將包含所有內容的資料夾傳送給指定的收件者即可。
資訊
您也可以開啟先前 pylon 或 Framegrabber SDK 版本中的記錄檔(例如副檔名為 .txt 和 .log 的檔案)。在此舊版模式中,無法剖析的訊息將會顯示來源為 "anytext"。
篩選事件訊息#
您可以使用不同的篩選條件來減少顯示的事件訊息數量,或突顯事件訊息以提升能見度。
所有設定好的篩選條件都會顯示在篩選列中,您可以在該處切換其啟用或停用狀態。

設定篩選器#
建立與設定篩選條件最簡單的方法是在訊息檢視中的儲存格上按一下滑鼠右鍵,然後選取所需的篩選條件類型。篩選條件金鑰、運算與篩選值將會自動從您點選的儲存格中取得。
範例:如果您只想檢視在特定時間點擷取的訊息,請在 Timestamp 上按滑鼠右鍵。在捷徑功能表中,選取 Add Display Filter。Display Filter 對話方塊隨即開啟,且所有資訊皆已填入。現在,您只需勾選核取方塊以啟用篩選條件即可。結果如下所示:

如有需要,您可以透過新增子項目與邏輯運算子來編輯篩選條件。
所有篩選條件設定都儲存在工作階段資料夾中的 .json 檔案內。如果您只是想保留篩選條件設定而不前往工作階段資料夾,也可以透過按一下 Display Filter 或 Highlight Filter 對話方塊中的 Export 將其匯出。匯入設定時,請務必選取正確類型的 .json 檔案。您只能在 Highlight Filter 對話方塊中匯入突顯篩選條件設定,且只能在 Display Filter 對話方塊中匯入顯示篩選條件設定。
若要手動設定篩選條件:
- 在側邊欄中,按一下 Display Filter 或 Highlight Filter 按鈕。
隨即會開啟篩選條件設定對話方塊。 - 透過指定篩選條件金鑰、運算與篩選值來設定第一個篩選條件。
若要輸入篩選值,請在文字欄位中按一下。篩選值會區分大小寫。 - 如果您正在設定突顯篩選條件,請為您的篩選條件選取顏色。
若要變更預設顏色,請按一下色票並在色彩對話方塊中選取顏色。 - 若有需要,可按一下條件旁邊的 新增子項 按鈕以新增子條件。
這會建立一個已包含第一個條件的篩選群組。按一下群組名稱即可變更群組名稱。- 按一下以新增其他篩選條件 新增項目 並指定篩選鍵、運算與篩選值。
- 選取所需的運算子。
- 按一下以新增其他篩選條件 新增項目 並指定篩選鍵、運算與篩選值。
- 選取對應的核取方塊以啟用篩選。
以下螢幕截圖顯示一個醒目提示篩選群組,可用於醒目提示 INFO 與 NOTICE 日誌層級的事件訊息。

搜尋功能#
搜尋功能允許您執行純文字與基於查詢的搜尋。包含搜尋字串的事件訊息將以粗體格式顯示。

您可以使用 sidebar 上的箭頭按鈕,相對於目前選取的列導覽至下一個/上一個搜尋結果。如果搜尋欄位取得焦點,您也可以使用 F3/Shift+F3 來逐一檢視搜尋結果。
最近 10 次搜尋會儲存在搜尋歷史記錄中,並可從中重新執行。
搜尋結果總數以及目前結果的索引會顯示在搜尋列的最右側。
搜尋功能為多個關鍵字提供自動完成功能。無論您是否選擇不區分大小寫的搜尋模式,關鍵字都是區分大小寫的。
以下關鍵字可用:NOTICE、INFO、WARN、DEBUG、ERROR、Timestamp、ThreadID、Source、LogLevel、MessageInfo、Entity、side_down、related_to
基於查詢的搜尋#
在基於查詢的搜尋中,您可以使用邏輯、數值與字串運算在訊息檢視的所有欄位中進行搜尋。
如果文字輸入以反斜線(\)開頭,查詢搜尋會自動啟用。對於每個文字輸入,驗證器會檢查該輸入是否可以被解析。如果輸入可以被解析,搜尋文字將變為綠色。否則,文字會帶有紅色底線。一旦您有了有效的輸入運算式,請按 Enter 鍵開始搜尋。
| 描述 | Operator |
|---|---|
| 等於 | == |
| 且 | && |
| 或 | || |
| Not | ! |
| Greater | > |
| Greater equal | >= |
| Less | < |
| Less equal | <= |
| Contains | ? |
| Starts With | ^ |
| Ends With | $ |
| Group Start | ( |
| Group End | ) |
| Literal Start/End | " |
| Escape for " | \" |
| Entity Relation | side_down |
| Entity Relation | related_to |
範例#
若要搜尋記錄層級為 DEBUG 或執行緒 ID 不為 12 的事件訊息:
\(LogLevel == Debug) || (ThreadId != "12")
若要搜尋記錄層級包含字母「de」且執行緒 ID 以 1 開頭並以 2 結尾的事件訊息:
\(LogLevel ? de) && (ThreadId ^ 1) && (ThreadId $ 2)
進階用法#
Properties 檔案#
開始擷取後,Event Logger 會在您的使用者目錄中建立一個名為 .pylonEventLogger 的資料夾。其中包含以下 properties 檔案:
- profileAnalysis.x.x.x.properties
- profileCustom1.x.x.x.properties
- profileCustom2.x.x.x.properties
- profileDefault.x.x.x.properties
- profileFactory.x.x.x.properties
x.x.x 表示 Event Logger 的版本。
這些檔案可用於變更來源應用程式的行為。其包含關於哪些設定可以變更的說明。例如,您可以指定來源應用程式發送訊息的日誌級別。這可防止 Event Logger 被不相關的事件訊息淹沒。
命令列介面#
除了使用 Event Logger 的 GUI 工具外,還可以使用以下命令列選項:
| 引數 | 動作 |
|---|---|
| -h, --help | 顯示命令列選項的說明。 |
| -m, --minimize | 以最小化模式啟動應用程式。此功能僅適用於支援匣道 (tray) 模式的作業系統。 |
| -l, --load | 決定要在啟動時載入的日誌檔案(副檔名為 .pel 的工作階段檔案以及副檔名為 .txt 或 .log 的舊版檔案)。 |
| -c, --capture | 以擷取模式啟動應用程式。 |
| -w, --write_properties | 寫入 Property 檔案並結束應用程式。不會覆寫現有的 Property 檔案。 |