本申請涉及數(shù)據(jù)處理,尤其涉及一種日志處理方法、裝置、電子設備及存儲介質(zhì)。
背景技術:
1、通常,網(wǎng)絡設備、操作系統(tǒng)以及服務程序等在運行時都會產(chǎn)生日志,日志中包括操作用戶的操作行為、操作時間等信息,開發(fā)人員通過分析日志,可以提高網(wǎng)絡設備、操作系統(tǒng)以及服務程序等的運行服務質(zhì)量。
2、目前,常見的日志采集的處理方式例如,采用flink,或者strom,在此基礎上進行進行日志數(shù)據(jù)的流轉和格式的壓縮之后實時的存入到分布式文件系統(tǒng)(hadoopdistributed?file?system,hdfs)。由于hdfs需要在通用硬件上運行,相關技術中,要實現(xiàn)提高處理實時采集的日志的速度,需要大量的硬件設備支持,且在處理日志的過程中,需要涉及數(shù)據(jù)庫的不同層級,例如,日志的清洗處理,需要在數(shù)據(jù)運營(operational?datastore,ods)層和數(shù)據(jù)明細(data?warehouse?detail,dwd)層處理,因此,整個日志的處理過程需要大量的重復代碼,最終導致日志處理過程敏捷性差,不便于實時調(diào)整日志的處理策略。基于此,如何進行靈活、高效地采集日志中的有用數(shù)據(jù)是亟需解決的問題。
技術實現(xiàn)思路
1、有鑒于此,本申請實施例提供一種日志處理方法、裝置、電子設備、計算機可讀存儲介質(zhì)及計算機程序產(chǎn)品,能夠高效、靈活地采集日志中有用的數(shù)據(jù)。
2、本申請實施例提供一種日志處理方法,包括:
3、獲取上游終端生成的第一日志,其中,第一日志包括包括與多個第一預設字段一一對應的字段數(shù)據(jù);
4、使用至少一個第一日志過濾器對第一日志進行過濾處理,其中,第一日志過濾器根據(jù)第一時間段獲取到的上游終端生成的第二日志構建得到,第二日志的獲取時間早于第一日志的獲取時間,第一日志的獲取時間位于第一時間段內(nèi);
5、在過濾處理的過濾結果為未被濾除的情況下,根據(jù)多個第一預設字段中第一目標字段的字段數(shù)據(jù),獲取第一目標字段的字段數(shù)據(jù)對應的過濾規(guī)則,其中,過濾規(guī)則包括第二預設字段和第二預設字段對應的地址信息;
6、在第一日志中獲取第二預設字段對應的字段數(shù)據(jù),根據(jù)第二預設字段對應的地址信息,發(fā)送第二預設字段的字段數(shù)據(jù)。
7、可選地,根據(jù)本申請實施例的方法,第一時間段包括與第一日志過濾器一一對應的子時間段,不同的子時間段之間無時間重合;每個第一日志過濾器基于其對應子時間段內(nèi)獲取的每個第二日志的特征信息生成;
8、使用至少一個第一日志過濾器對第一日志進行過濾處理,包括:
9、獲取第一日志的特征信息;
10、根據(jù)第一日志過濾器對應的索引計算函數(shù),計算第一日志的特征信息的索引值;
11、根據(jù)第一日志過濾器包括的每個第二日志特征信息的索引值和第一日志的特征信息的索引值,確定過濾處理的過濾結果;
12、其中,每個第二日志特征信息與第一日志的特征信息均不一致的情況下,過濾處理的過濾結果為未被濾除。
13、可選地,根據(jù)本申請實施例的方法,在得到過濾處理結果之后,方法還包括:
14、在過濾處理的過濾結果為未被濾除的情況下,根據(jù)第一日志的特征信息的索引值,更新第一日志過濾器中的目標日志過濾器;
15、其中,第一日志的獲取時間位于目標日志過濾器對應的子時間段內(nèi)。
16、可選地,根據(jù)本申請實施例的方法,獲取第一日志的特征信息,包括:
17、在多個第一預設字段中獲取第三預設字段對應字段數(shù)據(jù),得到第一日志的特征信息。
18、可選地,根據(jù)本申請實施例的方法,獲取第一目標字段的字段數(shù)據(jù)對應的過濾規(guī)則之前,方法還包括:
19、獲取規(guī)則數(shù)據(jù)庫中新增的過濾規(guī)則;
20、將新增的過濾規(guī)則存儲在預設的數(shù)據(jù)存儲空間中。
21、可選地,根據(jù)本申請實施例的方法,獲取規(guī)則數(shù)據(jù)庫中新增的過濾規(guī)則,包括:
22、響應于規(guī)則數(shù)據(jù)庫接收規(guī)則寫入操作并生成新增的過濾規(guī)則,基于flink?cdc讀取規(guī)則數(shù)據(jù)庫中新增的過濾規(guī)則,得到新增的過濾規(guī)則。
23、本申請實施例提供一種日志處理裝置,包括:
24、獲取模塊,用于獲取上游終端生成的第一日志,其中,日志包括多個第一預設字段,每個第一預設字段包括字段數(shù)據(jù);
25、處理模塊,用于使用至少一個第一日志過濾器對第一日志進行過濾處理,其中,第一日志過濾器根據(jù)第一時間段獲取到的上游終端生成的第二日志構建得到,第二日志的獲取時間早于第一日志的獲取時間,第一日志的獲取時間位于第一時間段內(nèi);
26、處理模塊,還用于在過濾處理的過濾結果為未被濾除的情況下,根據(jù)多個第一預設字段中第一目標字段的字段數(shù)據(jù),獲取第一目標字段的字段數(shù)據(jù)對應的過濾規(guī)則,其中,過濾規(guī)則包括第二預設字段和第二預設字段對應的地址信息;
27、處理模塊,還用于在第一日志中獲取第二預設字段對應的字段數(shù)據(jù),根據(jù)第二預設字段對應的地址信息,發(fā)送第二預設字段的字段數(shù)據(jù)。
28、本申請實施例提供一種電子設備,電子設備包括處理器以及存儲有計算機程序指令的存儲器;處理器執(zhí)行計算機程序指令時實現(xiàn)如上的方法的步驟。
29、本申請實施例提供一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)上存儲有計算機程序指令,計算機程序指令被處理器執(zhí)行時實現(xiàn)如上的方法的步驟。
30、本申請實施例提供一種計算機程序產(chǎn)品,計算機程序產(chǎn)品中包括計算機程序指令,計算機程序指令被處理器執(zhí)行時實現(xiàn)如上的方法的步驟。
31、采用本申請的實施例,獲取到上游終端生成的第一日志,通過使用基于鄰近時間段內(nèi)日志構建的第一日志過濾器,對第一日志進行過濾,可以快速、高效的濾除第一時間段內(nèi)存在的重復日志。隨后,在第一日志未被濾除的情況下,結合第一日志中第一目標字段的字段數(shù)據(jù),可以靈活地確定處理第一日志所采用的過濾規(guī)則,進而根據(jù)第一日志的過濾規(guī)則,在第一日志中提取出需要轉發(fā)第二預設字段的字段數(shù)據(jù),并對第二預設字段的字段數(shù)據(jù)進行轉發(fā),不僅能夠高效、靈活地采集日志中有用的日志,還實現(xiàn)對第一日志的高效分流。
1.一種日志處理方法,其特征在于,包括:
2.根據(jù)權利要求1所述的方法,其特征在于,所述第一時間段包括與所述第一日志過濾器一一對應的子時間段,不同的所述子時間段之間無時間重合;每個所述第一日志過濾器基于其對應子時間段內(nèi)獲取的每個所述第二日志的特征信息生成;
3.根據(jù)權利要求2所述的方法,其特征在于,在得到所述過濾處理結果之后,所述方法還包括:
4.根據(jù)權利要求2所述的方法,其特征在于,所述獲取所述第一日志的特征信息,包括:
5.根據(jù)權利要求1所述的方法,其特征在于,所述獲取所述第一目標字段的字段數(shù)據(jù)對應的過濾規(guī)則之前,所述方法還包括:
6.根據(jù)權利要求5所述的方法,其特征在于,所述獲取規(guī)則數(shù)據(jù)庫中新增的過濾規(guī)則,包括:
7.一種日志處理裝置,其特征在于,包括:
8.一種電子設備,其特征在于,所述電子設備包括:處理器以及存儲有計算機程序指令的存儲器;所述電子設備執(zhí)行所述計算機程序指令時實現(xiàn)如權利要求1-6中任一項所述的方法。
9.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)上存儲有計算機程序指令,所述計算機程序指令被處理器執(zhí)行時實現(xiàn)如權利要求1-6中任一項所述的方法。
10.一種計算機程序產(chǎn)品,其特征在于,其包括計算機程序指令,所述計算機程序指令被處理器執(zhí)行時實現(xiàn)如權利要求1-6中任一項所述的方法。