TWI687822B - 日誌文件儲存及讀取的方法及裝置 - Google Patents
日誌文件儲存及讀取的方法及裝置 Download PDFInfo
- Publication number
- TWI687822B TWI687822B TW107142618A TW107142618A TWI687822B TW I687822 B TWI687822 B TW I687822B TW 107142618 A TW107142618 A TW 107142618A TW 107142618 A TW107142618 A TW 107142618A TW I687822 B TWI687822 B TW I687822B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- log
- log files
- reading
- storing
- Prior art date
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本揭露提出一種日誌文件儲存及讀取的方法,適用於一電子裝置,上述方法包括:取得數據及日誌文件(Log);增加一標頭(Header)訊息至上述數據及上述日誌文件,以使上述數據及上述日誌文件具有相同的一傳送格式;以及將上述數據及上述日誌文件依一順序寫入上述電子裝置的一記憶體中。
Description
本揭露係屬於記憶體系統領域,特別是有關於一種日誌文件儲存及讀取的方法及裝置。
在系統中,通常採用日誌文件(Log)的方式記錄系統運行過程中的各種行為、事件,從而為系統性能分析、故障診斷、錯誤(Bug)排除、日誌統計等提供基礎數據。
傳統上,通常是在記憶體中分出一塊有限的空間儲存日誌文件。如第1圖所示,裝置100的一處理器110在記憶體120中分出一空間122存放數據(Data),另一空間124存放日誌文件。當裝置100出現問題時,處理器110須用一些特殊方式讀出日誌文件。然而,這樣的設計會有一些缺點。由於處理器110分出來的空間124有限,日誌文件的容量可能超過空間124可存放的容量,造成日誌文件的不完整。舉例來說,如第1圖所示,空間124中的數據區塊(Data Block)僅能存放4個日誌文件,分別為Log 1、Log 2、Log 3及Log 4。當有第五個日誌文件出現時,第五個日誌文件將覆蓋掉Log 1,導致Log 1為不完整的日誌文件。
有鑑於此,本發明提出一種日誌文件儲存及讀取的裝置,以改善上述缺點。
以下揭露的內容僅為示例性的,且不意指以任何方式加以限制。除所述說明方面、實施方式和特徵之外,透過參照附圖和下述具體實施方式,其他方面、實施方式和特徵也將顯而易見。即,以下揭露的內容被提供以介紹概念、重點、益處及本文所描述新穎且非顯而易見的技術優勢。所選擇,非所有的,實施例將進一步詳細描述如下。因此,以下揭露的內容並不意旨在所要求保護主題的必要特徵,也不意旨在決定所要求保護主題的範圍中使用。
因此,本發明之主要目的即在於提供一種日誌文件儲存及讀取的方法及裝置,以改善上述缺點。
本揭露提出一種日誌文件儲存及讀取的方法,適用於一電子裝置,上述方法包括:取得數據及日誌文件(Log);增加一標頭(Header)訊息至上述數據及上述日誌文件,以使上述數據及上述日誌文件具有相同的一傳送格式;以及將上述數據及上述日誌文件依一順序寫入上述電子裝置的一記憶體中。
在一些實施例中,上述方法更包括:依上述順序讀取具有上述傳送格式的上述數據及上述日誌文件。
在一些實施例中,上述順序係為取得上述數據及上述日誌文件的一時間順序。
在一些實施例中,上述標頭訊息包含關於上述數據及上述日誌文件放置在上述記憶體中哪一數據區塊的一指示。
在一些實施例中,上述日誌文件用於記錄在上述電子裝置中各個事務的狀態。
在一些實施例中,上述記憶體係一快閃記憶體。
本揭露提出一種日誌文件儲存及讀取的裝置,包括:一或多個處理器;以及一或多個電腦儲存媒體,儲存電腦可讀取指令,其中上述處理器使用上述電腦儲存媒體以執行:取得數據及日誌文件(Log);增加一標頭(Header)訊息至上述數據及上述日誌文件,以使上述數據及上述日誌文件具有相同的一傳送格式;以及將上述數據及上述日誌文件依一順序寫入上述裝置的一記憶體中。
在下文中將參考附圖對本揭露的各方面進行更充分的描述。然而,本揭露可以具體化成許多不同形式且不應解釋為侷限於貫穿本揭露所呈現的任何特定結構或功能。相反地,提供這些方面將使得本揭露周全且完整,並且本揭露將給本領域技術人員充分地傳達本揭露的範圍。基於本文所教導的內容,本領域的技術人員應意識到,無論是單獨還是結合本揭露的任何其它方面實現本文所揭露的任何方面,本揭露的範圍旨在涵蓋本文中所揭露的任何方面。例如,可以使用本文所提出任意數量的裝置或者執行方法來實現。另外,除了本文所提出本揭露的多個方面之外,本揭露的範圍更旨在涵蓋使用其它結構、功能或結構和功能來實現的裝置或方法。應可理解,其可透過申請專利範圍的一或多個元件具體化本文所揭露的任何方面。
詞語「示例性」在本文中用於表示「用作示例、實例或說明」。本揭露的任何方面或本文描述為「示例性」的設計不一定被解釋為優選於或優於本揭露或設計的其他方面。此外,相同的數字在所有若干圖示中指示相同的元件,且除非在描述中另有指定,冠詞「一」和「上述」包含複數的參考。
可以理解,當元件被稱為被「連接」或「耦接」至另一元件時,該元件可被直接地連接到或耦接至另一元件或者可存在中間元件。相反地,當該元件被稱為被「直接連接」或「直接耦接」至到另一元件時,則不存在中間元件。用於描述元件之間的關係的其他詞語應以類似方式被解釋(例如,「在…之間」與「直接在…之間」、「相鄰」與「直接相鄰」等方式)。
第2圖係顯示根據本揭露一實施例所述之日誌文件儲存及讀取的系統200之示例性示意圖。系統200可包括電子裝置210。電子裝置210透過網路230連接到一伺服器220。
電子裝置210可包括輸入裝置212,其中,該輸入裝置被配置為從各種來源接收輸入數據。舉例來說,電子裝置210可以從網路230接收伺服器220所傳送之數據。電子裝置210還包括處理器及可以存儲程式2182的一記憶體218。此外,處理器214可產生日誌文件(Log),其中日誌文件係記錄在電子裝置210中各個事務的狀態。例如,電子裝置210發生異常狀況的詳細資訊、電子裝置210運行過程中的各種行為、事件等資訊。處理器214可以將伺服器220所傳送之數據、電子裝置210所產生的數據及∕或日誌文件等數據寫入記憶體218中。在一實施例中,記憶體218係一快閃記憶體。
電子裝置210的類型範圍從小型手持裝置(例如,行動電話∕可攜式電腦)到大型主機系統(例如大型電腦)。可攜式電腦的示例包括個人數位助理(PDA)、筆記型電腦等裝置。電子裝置210可使用網路230連接至伺服器220。網路230可包括但不侷限於一或多個區域網(Local Area Network,LAN)和/或廣域網路(Wide Area Network,WAN)。
應可理解,第2圖所示的電子裝置210係一日誌文件儲存及讀取之系統200架構的示例。第2圖所示的每個元件可經由任何類型的電子裝置來實現,像是參考第6圖描述的電子裝置600,如第6圖所示。
第3圖係顯示根據本揭露一實施例所述之日誌文件儲存及讀取的方法300之流程圖。此方法可執行於如第2圖所示之電子裝置210的處理器214中。
在步驟S305中,電子裝置取得數據及日誌文件(Log),其中上述日誌文件用於記錄在上述電子裝置中各個事務的狀態。在步驟S310中,電子裝置增加一標頭(Header)訊息至數據及日誌文件,以使數據及日誌文件具有相同的一傳送格式,其中上述標頭訊息可包含關於上述數據及上述日誌文件放置在記憶體中哪一個數據區塊(Data Block)的一指示。如第4圖所示,電子裝置在數據(Data)410及日誌文件(Log)420的前方增加了標頭(Header)訊息430,使得數據410及日誌文件420具有相同傳送格式。
在步驟S315中,電子裝置將數據及日誌文件依一順序寫入電子裝置的一記憶體中。在此實施例中,記憶體係一快閃記憶體。在一實施例中,上述順序係為電子裝置取得上述數據及上述日誌文件的一時間順序。在另一實施例中,上述順序可為一特定順序。舉例來說,電子裝置寫入四個數據後即寫入一日誌文件至記憶體中。在又一實施例中,電子裝置可隨機寫入數據及日誌文件至記憶體中。
此外,當電子裝置寫入數據及日誌文件至記憶體後,電子裝置也可依照上述順序讀取具有相同傳送格式的數據及日誌文件,並將具有相同傳送格式的數據及日誌文件傳送至其他裝置。當其他裝置接收到具有相同傳送格式的數據及日誌文件後,可移除其標頭訊息,並根據數據及日誌文件本身的格式差異判斷所接收到的資訊為數據或是日誌文件。
第5A~5B圖係顯示電子裝置將數據及日誌文件依一順序寫入記憶體中之示意圖。如第5A圖所示,此順序係為電子裝置取得上述數據及上述日誌文件的一時間順序。舉例來說,電子裝置依序接收數據(Data)後接收日誌文件(Log)1,則電子裝置依序寫入Data至記憶體中之數據區塊(Data Block)0~3後寫入Log 1至Data Block 4。後續電子裝置寫入Log 2~5至順序亦如前所述,在此不再贅述。在第5B圖中,上述順序係為一特定順序。舉例來說,電子裝置寫入四個數據後即寫入一日誌文件。如第5B圖所示, Log被寫入在每隔四個存放Data的數據區塊後的數據區塊(Data Block)4、9、…、8179、8184及8189。
如上所述,透過本揭露之日誌文件儲存及讀取的裝置,數據及日誌文件可較靈活地被寫入記憶體空間,日誌文件的儲存空間能不被限縮。此外,由於數據及日誌文件具有相同的傳送格式,因此數據及日誌文件無須使用額外的特殊方式即可以一般程序讀取出來。
對於本發明已描述的實施例,下文描述了可以實現本發明實施例的示例性操作環境。具體參考第6圖,第6圖係顯示用以實現本發明實施例的示例性操作環境,一般可被視為電子裝置600。電子裝置600僅為一合適計算環境的一個示例,並不意圖暗示對本發明使用或功能範圍的任何限制。電子裝置600也不應被解釋為具有與所示元件任一或組合相關任何的依賴性或要求。
本發明可在電腦程式碼或機器可使用指令來執行本發明,指令可為程式模組的電腦可執行指令,其程式模組由電腦或其它機器,例如個人數位助理或其它可攜式裝置執行。一般而言,程式模組包括例程、程式、物件、元件、數據結構等,程式模組指的是執行特定任務或實現特定抽象數據類型的程式碼。本發明可在各種系統組態中實現,包括可攜式裝置、消費者電子產品、通用電腦、更專業的電子裝置等。本發明還可在分散式運算環境中實現,處理由通訊網路所連結的裝置。
參考第6圖。電子裝置600包括直接或間接耦接以下裝置的匯流排610、記憶體612、一或多個處理器614、一或多個顯示元件616、輸入/輸出(I/O)埠口618、輸入/輸出(I/O)元件620以及說明性電源供應器622。匯流排610表示可為一或多個匯流排之元件(例如,位址匯流排、數據匯流排或其組合)。雖然第6圖的各個方塊為簡要起見以線示出,實際上,各個元件的分界並不是具體的,例如,可將顯示裝置的呈現元件視為I/O元件;處理器可具有記憶體。
電子裝置600一般包括各種電腦可讀取媒體。電腦可讀取媒體可以是可被電子裝置600存取的任何可用媒體,該媒體同時包括易揮發性和非易揮發性媒體、可移動和不可移動媒體。舉例但不侷限於,電腦可讀取媒體可包括電腦儲存媒體和通訊媒體。電腦可讀取媒體同時包括在用於儲存像是電腦可讀取指令、資料結構、程式模組或其它數據之類資訊的任何方法或技術中實現的易揮發性性和非易揮發性媒體、可移動和不可移動媒體。電腦儲存媒體包括但不侷限於RAM、ROM、EEPROM、快閃記憶體或其它記憶體技術、CD-ROM、數位多功能光碟(DVD)或其它光碟儲存裝置、磁片、磁碟、磁片儲存裝置或其它磁儲存裝置,或可用於儲存所需的資訊並且可被電子裝置600存取的其它任何媒體。電腦儲存媒體本身不包括信號。
通訊媒體一般包含電腦可讀取指令、資料結構、程式模組或其它採用諸如載波或其他傳輸機制之類的模組化數據訊號形式的數據,並包括任何資訊傳遞媒體。術語「模組化數據訊號」係指具有一或多個特徵集合或以在訊號中編碼資訊之一方式更改的訊號。舉例但不侷限於,通訊媒體包括像是有線網路或直接有線連接的有線媒體及無線媒體,像是聲頻、射頻、紅外線以及其它無線媒體。上述媒體的組合包括在電腦可讀取媒體的範圍內。
記憶體612包括以易揮發性和非易揮發性記憶體形式的電腦儲存媒體。記憶體可為可移動、不移動或可以為這兩種的組合。示例性硬體裝置包括固態記憶體、硬碟驅動器、光碟驅動器等。電子裝置600包括一或多個處理器,其讀取來自像是記憶體612或I/O元件620各實體的數據。顯示元件616向使用者或其它裝置顯示數據指示。示例性顯示元件包括顯示裝置、揚聲器、列印元件、振動元件等。
I/O埠口618允許電子裝置600邏輯連接到包括I/O元件620的其它裝置,一些此種裝置為內建裝置。示例性元件包括麥克風、搖桿、遊戲台、碟形衛星訊號接收器、掃描器、印表機、無線裝置等。I/O元件620可提供一自然使用者介面,用於處理使用者生成的姿勢、聲音或其它生理輸入。在一些例子中,這些輸入可被傳送到一合適的網路元件以便進一步處理。
此外,電子裝置600中之處理器614也可執行記憶體612中之程式及指令以呈現上述實施例所述之動作和步驟,或其它在說明書中內容之描述。
在此所揭露程序之任何具體順序或分層之步驟純為一舉例之方式。基於設計上之偏好,必須了解到程序上之任何具體順序或分層之步驟可在此文件所揭露的範圍內被重新安排。伴隨之方法權利要求以一示例順序呈現出各種步驟之元件,也因此不應被此所展示之特定順序或階層所限制。
申請專利範圍中用以修飾元件之「第一」、「第二」、「第三」等序數詞之使用本身未暗示任何優先權、優先次序、各元件之間之先後次序、或方法所執行之步驟之次序,而僅用作標識來區分具有相同名稱(具有不同序數詞)之不同元件。
雖然本揭露已以實施範例揭露如上,然其並非用以限定本案,任何熟悉此項技藝者,在不脫離本揭露之精神和範圍內,當可做些許更動與潤飾,因此本案之保護範圍當視後附之申請專利範圍所界定者為準。
100:裝置
110:處理器
120:記憶體
122、124:空間
200:系統
210:電子裝置
212:輸入裝置
214:處理器
218:記憶體
2182:程式
220:伺服器
230:網路
300:方法
S305、S310、S315:步驟
410:數據(Data)
420:日誌文件(Log)
430:標頭(Header)
600:電子裝置
610:匯流排
612:記憶體
614:處理器
616:顯示元件
618:I/O埠口
620:I/O元件
622:電源供應器
附圖被包括以提供本揭露進一步理解且被合併並組成本揭露的一部分。附圖係說明本揭露的實施例且連同描述一起用以解釋本揭露的原理。其可理解附圖不一定按比例描繪,一些元件可以超過在實際實施方式的大小來顯示,以清楚地說明本揭露的概念。 第1圖係顯示一裝置寫入日誌文件至記憶體之示意圖。 第2圖係顯示根據本揭露一實施例所述之日誌文件儲存及讀取的系統之示例性示意圖。 第3圖係顯示根據本揭露一實施例所述之日誌文件儲存及讀取的方法之流程圖。 第4圖係顯示根據本揭露一實施例所述之具有相同傳送格式的數據及日誌文件之示意圖。 第5A~5B圖係顯示電子裝置將數據及日誌文件依一順序寫入記憶體中之示意圖。 第6圖係顯示用以實現本發明實施例的示例性操作環境。
300:方法
S305、S310、S315:步驟
Claims (10)
- 一種日誌文件儲存及讀取的方法,適用於一電子裝置,上述方法包括:取得數據及日誌文件(Log);增加一標頭(Header)訊息至上述數據及上述日誌文件,以使上述數據及上述日誌文件具有相同的一傳送格式;以及將上述數據及上述日誌文件依一順序寫入上述電子裝置的一記憶體中,其中上述標頭訊息包含關於上述數據及上述日誌文件放置在上述記憶體中哪一數據區塊的一指示。
- 如申請專利範圍第1項所述的日誌文件儲存及讀取的方法,更包括:依上述順序讀取具有上述傳送格式的上述數據及上述日誌文件。
- 如申請專利範圍第1項所述的日誌文件儲存及讀取的方法,其中上述順序係為取得上述數據及上述日誌文件的一時間順序。
- 如申請專利範圍第1項所述的日誌文件儲存及讀取的方法,其中上述日誌文件用於記錄在上述電子裝置中各個事務的狀態。
- 如申請專利範圍第1項所述的日誌文件儲存及讀取的方法,其中上述記憶體係一快閃記憶體。
- 一種日誌文件儲存及讀取的裝置,包括:一或多個處理器;以及 一或多個電腦儲存媒體,儲存電腦可讀取指令,其中上述處理器使用上述電腦儲存媒體以執行:取得數據及日誌文件(Log);增加一標頭(Header)訊息至上述數據及上述日誌文件,以使上述數據及上述日誌文件具有相同的一傳送格式;以及將上述數據及上述日誌文件依一順序寫入上述裝置的一記憶體中,其中上述標頭訊息包含關於上述數據及上述日誌文件放置在上述記憶體哪一數據區塊記憶體的一指示。
- 如申請專利範圍第6項所述的日誌文件儲存及讀取的裝置,其中上述處理器更執行:依上述順序讀取具有上述傳送格式的上述數據及上述日誌文件。
- 如申請專利範圍第6項所述的日誌文件儲存及讀取的裝置,其中上述順序係為取得上述數據及上述日誌文件的一時間順序。
- 如申請專利範圍第6項所述的日誌文件儲存及讀取的裝置,其中上述日誌文件用於記錄在上述電子裝置中各個事務的狀態。
- 如申請專利範圍第6項所述的日誌文件儲存及讀取的裝置,其中上述記憶體係一快閃記憶體。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107142618A TWI687822B (zh) | 2018-11-29 | 2018-11-29 | 日誌文件儲存及讀取的方法及裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107142618A TWI687822B (zh) | 2018-11-29 | 2018-11-29 | 日誌文件儲存及讀取的方法及裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI687822B true TWI687822B (zh) | 2020-03-11 |
TW202020686A TW202020686A (zh) | 2020-06-01 |
Family
ID=70766845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107142618A TWI687822B (zh) | 2018-11-29 | 2018-11-29 | 日誌文件儲存及讀取的方法及裝置 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI687822B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376043A (zh) * | 2014-10-14 | 2015-02-25 | 深圳怡化电脑股份有限公司 | 日志记录与显示方法及装置 |
TW201512837A (zh) * | 2013-09-18 | 2015-04-01 | Chunghwa Telecom Co Ltd | 系統日誌檔稽核管理系統及其方法 |
TW201516720A (zh) * | 2013-07-26 | 2015-05-01 | Intelligent Ip Holdings 2 Llc | 用於儲存一致性之系統及方法 |
TW201642132A (zh) * | 2015-05-18 | 2016-12-01 | Chunghwa Telecom Co Ltd | 網路日誌格式的識別系統及其方法 |
-
2018
- 2018-11-29 TW TW107142618A patent/TWI687822B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201516720A (zh) * | 2013-07-26 | 2015-05-01 | Intelligent Ip Holdings 2 Llc | 用於儲存一致性之系統及方法 |
TW201512837A (zh) * | 2013-09-18 | 2015-04-01 | Chunghwa Telecom Co Ltd | 系統日誌檔稽核管理系統及其方法 |
CN104376043A (zh) * | 2014-10-14 | 2015-02-25 | 深圳怡化电脑股份有限公司 | 日志记录与显示方法及装置 |
TW201642132A (zh) * | 2015-05-18 | 2016-12-01 | Chunghwa Telecom Co Ltd | 網路日誌格式的識別系統及其方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202020686A (zh) | 2020-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101224721B1 (ko) | 컨텍스트-인식 플랫폼을 위한 시스템 및 방법 | |
WO2020221229A1 (zh) | 应用程序分享、分享信息显示方法、装置、设备及介质 | |
US8195619B2 (en) | Extent reference count update system and method | |
JP5369807B2 (ja) | ストレージ装置 | |
US20120102462A1 (en) | Parallel test execution | |
US20130054925A1 (en) | Memory allocation tracking | |
US11556456B2 (en) | Telemetry system extension | |
US20150277936A1 (en) | Device Flags | |
KR20060050489A (ko) | 디맨드 이벤트를 위한 오브젝트 복제 | |
CN111338626B (zh) | 一种界面渲染方法、装置、电子设备及介质 | |
US20240256495A1 (en) | Method, apparatus, electronic device and storage medium for data processing | |
CN114020193A (zh) | 跨页勾选确定方法、装置、电子设备及存储介质 | |
TWI687822B (zh) | 日誌文件儲存及讀取的方法及裝置 | |
US11558180B2 (en) | Key-value store with blockchain properties | |
CN109669838B (zh) | 实现应用常驻的方法、装置、计算机设备及存储介质 | |
US7657664B2 (en) | Method and system for tracking device driver requests | |
KR102372732B1 (ko) | 에뮬레이션 기반의 포렌식 분석을 수행하는 전자 장치 및 그것을 이용하여 포렌식 분석을 수행하는 방법 | |
US11556542B2 (en) | Optionally compressed output from command-line interface | |
US9524217B1 (en) | Federated restores of availability groups | |
US9588716B1 (en) | Method and system for backup operations for shared volumes | |
JP2011186853A (ja) | データ処理装置及びシステム及び方法及びプログラム | |
US20240103973A1 (en) | Leveraging file-system metadata for direct to cloud object storage optimization | |
US12093528B2 (en) | System and method for managing data access in distributed systems | |
EP3797373B1 (en) | Ex post facto platform configuration attestation | |
US20240103984A1 (en) | Leveraging backup process metadata for data recovery optimization |