[發明專利]日志采集過程中管理內存中文件對象的方法和裝置有效
申請號: | 202010830613.3 | 申請日: | 2020-08-18 |
公開(公告)號: | CN111966655B | 公開(公告)日: | 2023-10-24 |
發明(設計)人: | 李曉寧;朱夢 | 申請(專利權)人: | 中國銀行股份有限公司 |
主分類號: | G06F16/18 | 分類號: | G06F16/18;G06F16/14;G06F16/174 |
代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 谷敬麗;吳學鋒 |
地址: | 100818 *** | 國省代碼: | 北京;11 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 日志 采集 過程 管理 內存 文件 對象 方法 裝置 | ||
本發明提供一種日志采集過程中管理內存中文件對象的方法和裝置,該方法包括:獲取日志讀取位置記錄文件;根據日志讀取位置記錄文件,確定每個滾動日志實例的最新順序標記,存入日志文件最新順序標記映射;讀取待采集日志文件,獲取待采集日志文件的最新順序標記;將待采集日志文件的最新順序標記與日志文件最新順序標記映射進行匹配查詢,通過多重判斷規則,將待采集日志文件的句柄打開,生成待讀取日志文件,放入內存的在讀文件列表;遍歷在讀文件列表,獲取待讀取日志文件的最新順序標記,將待讀取日志文件的最新順序標記與更新后日志文件最新順序標記映射進行對比,將符合設定規則的待讀取日志文件的句柄關閉并從內存的在讀文件列表中清除。
技術領域
本發明涉及計算機信息處理技術領域,尤其涉及一種日志采集過程中管理內存中文件對象的方法和裝置。
背景技術
本部分旨在為權利要求書中陳述的本發明的實施方式提供背景或上下文。此處的描述不因為包括在本部分中就承認是現有技術。
隨著計算機技術的不斷發展,日志不再僅可以用來供工程師人工排查錯誤,而且可以成為大數據分析、智能運維等領域的數據源。因此,一個優秀的日志采集工具必不可少。在文本日志采集過程中,為了減少數據重復和數據丟失,需要在內存中記錄每個日志文件所采集到的位置,并定期進行持久化,以便在采集工具重新啟動后可以實現斷點續傳。
然而,在待采集的日志滾動時間間隔較短,待采集日志文件個數多的場景下,在內存記錄大量的日志文件采集位置信息必將帶來性能問題。由此引出的一個技術問題就是,內存中究竟需要保持哪些文件句柄的打開,以及記錄哪些文件的采集位置信息,以便于同時滿足提高數據準確性、減少內存占用、提高程序性能的多重需求。
現有的方式是通過設置超時關閉參數close_inactive,以及超時清理參數clean_inactive。當文件最后修改時間距離當前時間已經超過close_inactive所設置的數值,則關閉文件句柄;當文件的最后修改時間距離當前時間已經超過clean_inactive所設置的值,則關閉文件句柄,并從內存中清理當前保存的該文件的采集位置信息。
現有技術的缺點主要包括:參數close_inactive如果設置的不合理,在某些場景下會導致性能下降,另外在某些場景下又會導致文件句柄數占用過多。參數clean_inactive如果設置的不合理,在某些場景下會導致數據不準確,另外在某些場景下又會導致日志采集程序占用內存較高,影響程序性能。
因此,如何提供一種新的方案,其能夠解決上述技術問題是本領域亟待解決的技術難題。
發明內容
本發明實施例提供一種日志采集過程中管理內存中文件對象的方法,實現了對內存中打開句柄日志文件的精準管理,減小了內存占用,該方法包括:
獲取日志讀取位置記錄文件;
根據日志讀取位置記錄文件,確定每個滾動日志實例的最新順序標記,存入日志文件最新順序標記映射;
讀取待采集日志文件,獲取待采集日志文件的最新順序標記;
將待采集日志文件的最新順序標記與日志文件最新順序標記映射進行匹配查詢,若日志文件最新順序標記映射中記錄有該待采集日志文件的最新順序標記,則將該待采集日志文件的最新順序標記與日志文件最新順序標記映射中的該待采集日志文件對應的最新順序標記進行對比,當該待采集日志文件的最新順序標記大于日志文件最新順序標記映射中的該待采集日志文件對應的最新順序標記時,將待采集日志文件的句柄打開,生成待讀取日志文件,放入內存的在讀文件列表;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國銀行股份有限公司,未經中國銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010830613.3/2.html,轉載請聲明來源鉆瓜專利網。