摘 要:建設(shè)一套能夠?qū)崟r(shí)監(jiān)控圖書館所有IT基礎(chǔ)設(shè)施的告警系統(tǒng),應(yīng)用于圖書館網(wǎng)絡(luò),及時(shí)發(fā)現(xiàn)并解決異常故障,提高故障排查和維護(hù)效率。通過方案選型對(duì)比測(cè)試,選取最佳開源解決方案,實(shí)時(shí)采集監(jiān)控IT基礎(chǔ)設(shè)施的運(yùn)行狀態(tài);針對(duì)圖書館專用設(shè)備,二次開發(fā)采集自定義指標(biāo);通過微信實(shí)現(xiàn)告警信息的實(shí)時(shí)傳遞和交互;對(duì)接Grafana實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)可視化展示?;贜ightingale和微信實(shí)現(xiàn)的監(jiān)控告警系統(tǒng),大大提高了圖書館IT管理部門的工作效率和服務(wù)水平,同時(shí)可保證圖書館的正常運(yùn)營和信息安全。
關(guān)鍵詞:Nightingale;開源軟件;監(jiān)控告警
中圖分類號(hào):TP39 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2024)13-0151-05
Application of Real-time Monitoring and Alarm System Based on Nightingale in Libraries
QIU Hui, OU Chen
(Changsha Library, Changsha 414000, China)
Abstract: It constructs a real-time monitoring and alarm system for all IT infrastructures in a library, applied to the library network, to promptly detect and resolve abnormal faults, improving the efficiency of fault diagnosis and maintenance. Through comparative testing of solution selection, the best open-source solution is chosen to collect and monitor the operational status of IT infrastructure in real time. For library-specific equipment, secondary development is carried out to collect custom metrics. Real-time transmission and interaction of alert information is achieved through WeChat, and monitoring data visualization is realized by integrating with Grafana. The monitoring and alert system implemented based on Nightingale and WeChat has greatly improved the work efficiency and service level of the library's IT management department, while ensuring the normal operation and information security of the library.
Keywords: Nightingale; open-source software; monitoring and alarm
0 引 言
圖書館的IT基礎(chǔ)設(shè)施涵蓋服務(wù)器、網(wǎng)絡(luò)設(shè)備、數(shù)據(jù)庫、自助借還書設(shè)備以及圖書館自動(dòng)化管理和活動(dòng)系統(tǒng)等核心要素[1]。隨著數(shù)字化進(jìn)程的不斷推進(jìn),數(shù)據(jù)中心服務(wù)器數(shù)量激增,新的自助服務(wù)設(shè)備也逐漸遍布整個(gè)圖書館,同時(shí)服務(wù)異常的發(fā)生頻率也在不斷上升。故障的發(fā)現(xiàn)和處理僅僅依賴讀者或工作人員的反饋,導(dǎo)致問題解決的延遲,這不僅效率低下,還會(huì)令讀者對(duì)圖書館服務(wù)質(zhì)量和系統(tǒng)可用性產(chǎn)生質(zhì)疑,嚴(yán)重影響了圖書館的聲譽(yù)和正常運(yùn)營。因此,圖書館亟須開發(fā)一套能夠?qū)崟r(shí)監(jiān)控IT基礎(chǔ)設(shè)施,在發(fā)生異常時(shí)能夠及時(shí)發(fā)送告警通知的系統(tǒng)。這一系統(tǒng)能夠提前發(fā)出警報(bào),實(shí)時(shí)檢測(cè)故障,并通過電子郵件、短信、微信等多種方式發(fā)送告警通知,同時(shí)提供詳盡的數(shù)據(jù),以幫助相關(guān)人員追蹤和定位故障。
在本文中,我們將探討長沙圖書館實(shí)時(shí)監(jiān)控告警系統(tǒng)建設(shè)方案的選擇過程,分享了基于開源軟件Nightingale和微信的解決方案,結(jié)合特定自助服務(wù)設(shè)備的二次開發(fā),實(shí)現(xiàn)了對(duì)圖書館IT基礎(chǔ)設(shè)施的實(shí)時(shí)監(jiān)控和告警。
1 選型思路
監(jiān)控告警系統(tǒng)的獲得一般有采購商業(yè)軟件或服務(wù)、利用開源軟件開發(fā)、完全自主開發(fā)三種方式。對(duì)于資金充裕的圖書館,可采購商業(yè)軟件,所采購的商業(yè)軟件運(yùn)行穩(wěn)定,售后有保障,不足之處一是成本較高,商業(yè)軟件收費(fèi)一般按照功能模塊、監(jiān)控?cái)?shù)量授權(quán)等多種方式計(jì)費(fèi),二是商業(yè)軟件內(nèi)部源碼與數(shù)據(jù)不對(duì)外公開,除廠商能夠定制開發(fā)之外,使用者無修改權(quán)限,而且成本較高,周期較長[2]。
另外,現(xiàn)在基于云計(jì)算的云監(jiān)控服務(wù)也越來越普遍,目前提供這類服務(wù)的主要有云計(jì)算服務(wù)提供商(比如騰訊云、阿里云等)和專門提供特定監(jiān)控服務(wù)的監(jiān)控寶、360網(wǎng)站服務(wù)監(jiān)控等,這類服務(wù)對(duì)通用Web服務(wù)、網(wǎng)站運(yùn)行的監(jiān)控效果很好,甚至免費(fèi)版即可滿足中小型圖書館的需求,缺點(diǎn)是對(duì)于圖書館一些特定服務(wù)或是不聯(lián)外網(wǎng)的圖書館業(yè)務(wù)服務(wù)設(shè)備監(jiān)控不方便。
從經(jīng)費(fèi)預(yù)算、自動(dòng)化程度高低、靈活開放程度等方面結(jié)合來看,開源軟件有比較明顯的優(yōu)勢(shì)。筆者調(diào)研后了解到,市面上使用人數(shù)較多、開源社區(qū)相對(duì)活躍的知名開源解決方案有Zabbix、Nagios、Prometheus、Nightingale。其中Nagios因配置使用比較煩瑣、軟件更新慢、UI界面比較過時(shí)等因素而被排除在外,而Prometheus主要應(yīng)用于容器監(jiān)控場(chǎng)景。因此通過本地測(cè)試對(duì)比及筆者單位實(shí)際情況,最終決定基于Nightingale搭建本單位的監(jiān)控告警系統(tǒng)。
監(jiān)控告警消息的推送通常采用郵件、短信、微信等方式。郵件可能出現(xiàn)接收不及時(shí)容易被運(yùn)維人員擱置的問題,短信平臺(tái)的使用及通知會(huì)產(chǎn)生額外的費(fèi)用。微信作為時(shí)下最為流行的社交軟件,已成為工作和生活中必不可少的工具,對(duì)消息處理的即時(shí)性遠(yuǎn)超郵件[3]。微信公眾平臺(tái)默認(rèn)具備豐富強(qiáng)大的功能,并且提供完備的接口開發(fā)文檔。監(jiān)控告警系統(tǒng)通過調(diào)用微信的接口向微信推送告警消息,使用完全零成本。
2 需求分析
長沙圖書館對(duì)實(shí)時(shí)監(jiān)控告警設(shè)備的需求包括服務(wù)器、存儲(chǔ)設(shè)備、交換機(jī)、無線AP接入點(diǎn)、客流統(tǒng)計(jì)攝像頭、自助辦證借還服務(wù)(ACS)以及nginx、tomcat等Web組件。這些設(shè)備的配備對(duì)圖書館的業(yè)務(wù)運(yùn)營至關(guān)重要,一旦出現(xiàn)故障將對(duì)圖書館的正常運(yùn)營造成直接影響。
另外,許多設(shè)施設(shè)備自帶管理系統(tǒng),例如服務(wù)器的虛擬化管理平臺(tái)、無線控制器的管理后臺(tái)、磁盤陣列的控制器等,這些系統(tǒng)大多具備監(jiān)控告警功能,但是這些系統(tǒng)的告警通知主要是以系統(tǒng)內(nèi)部消息為主,以郵件推送為輔,且分散不統(tǒng)一。
為了減少重要性較低告警消息對(duì)正常工作的干擾,同時(shí)又盡可能全面地采集關(guān)鍵監(jiān)控?cái)?shù)據(jù),需要針對(duì)監(jiān)控告警情況采取分類配置策略。具體措施包括:
1)根據(jù)設(shè)備的故障程度和對(duì)讀者借閱服務(wù)質(zhì)量的影響程度進(jìn)行分類和優(yōu)先級(jí)排序。
2)針對(duì)不同類別的設(shè)備或故障情況,設(shè)置不同的監(jiān)控閾值、告警方式、通知人員等參數(shù)。
3)對(duì)于一些關(guān)鍵設(shè)備或服務(wù),采取實(shí)時(shí)監(jiān)控和告警以確保及時(shí)發(fā)現(xiàn)并處理故障。
4)對(duì)于一些重要性較低的設(shè)備或服務(wù),通過定期巡檢或狀態(tài)監(jiān)測(cè)的方式來避免不必要的干擾。
3 系統(tǒng)構(gòu)建
在這個(gè)實(shí)時(shí)監(jiān)控告警系統(tǒng)中,設(shè)置了不同的監(jiān)控項(xiàng)和閾值,以便能夠及時(shí)發(fā)現(xiàn)設(shè)備的故障或異常情況。當(dāng)某個(gè)設(shè)備出現(xiàn)異常時(shí)會(huì)立即發(fā)送告警信息,同時(shí)也會(huì)通過微信將告警信息推送給管理員。管理員在接收到告警信息后,可以及時(shí)采取相應(yīng)的措施進(jìn)行修復(fù)和處理。同時(shí),管理員也可將告警系統(tǒng)與數(shù)據(jù)可視化工具對(duì)接,查看實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)、歷史數(shù)據(jù)和告警信息等。
3.1 監(jiān)控系統(tǒng)架構(gòu)
夜鶯監(jiān)控系統(tǒng)是一套衍生自O(shè)pen-Falcon的互聯(lián)網(wǎng)監(jiān)控解決方案,融入了滴滴的最佳實(shí)踐[4],由于改動(dòng)太大,優(yōu)化太多,產(chǎn)品已經(jīng)無法與Open-Falcon平滑兼容,故而單開一個(gè)項(xiàng)目。上線至今已有上千家商業(yè)公司在生產(chǎn)環(huán)境中使用,后續(xù)將會(huì)逐步優(yōu)化。與Open-Falcon相比,夜鶯監(jiān)控系統(tǒng)在性能、易用性、可用性方面都做了大幅改進(jìn),開源至今已累計(jì)迭代100多個(gè)版本[5]。筆者于2021年部署調(diào)試完畢,下面將介紹基于夜鶯監(jiān)控v4.0.2版本。
Nightingale主要由Agent、Transfer、TSBD、Index、Judge、Monapi、RDB、Job、AMS九個(gè)組件組成,架構(gòu)圖如圖1所示。
整體看來,夜鶯的核心處理邏輯可以分成四大塊:
1)以Agent為核心的數(shù)據(jù)采集模塊。
2)以Transfer為核心的相關(guān)模塊。負(fù)責(zé)傳輸、存儲(chǔ)鏈路,同時(shí)對(duì)外暴露查詢接口,用于查詢索引信息和歷史監(jiān)控?cái)?shù)據(jù)。
3)以Judge為核心的告警引擎模塊。依據(jù)告警策略對(duì)監(jiān)控?cái)?shù)據(jù)做閾值判斷,如果監(jiān)控?cái)?shù)據(jù)觸發(fā)閾值會(huì)生成告警事件,推給Redis隊(duì)列,由Monapi(Alarm)模塊來消費(fèi)處理[6]。
4)用戶交互部分。提供Web頁面給終端用戶操作,進(jìn)行數(shù)據(jù)查看、告警策略配置、告警采集配置、告警屏蔽配置、告警事件查看等。
3.2 系統(tǒng)工作流程
Agent組件用于采集監(jiān)控目標(biāo)數(shù)據(jù),可自動(dòng)采集目標(biāo)的各種指標(biāo)數(shù)據(jù),默認(rèn)可采集Linux、Windows、MySQL、Redis、MongoDB、交換機(jī)、Nginx、LVS等20個(gè)大類共計(jì)200多項(xiàng)指標(biāo)[7]。只要安裝了Agent的機(jī)器,就會(huì)自動(dòng)采集各項(xiàng)指標(biāo),主動(dòng)上報(bào)給Transfer組件。對(duì)于一些非標(biāo)準(zhǔn)的監(jiān)控指標(biāo),它提供了Plugin插件機(jī)制,支持用戶使用任意編程語言二次開發(fā)采集插件。
Agent采集的數(shù)據(jù)統(tǒng)一由Transfer組件轉(zhuǎn)發(fā),TSDB(時(shí)序數(shù)據(jù)庫)和Index組件負(fù)責(zé)指標(biāo)數(shù)據(jù)存儲(chǔ)、索引,提供API接口供用戶進(jìn)行快速查詢、數(shù)據(jù)可視化處理等。
Judge組件用于判斷Transfer推送的指標(biāo)數(shù)據(jù)是否關(guān)聯(lián)了告警策略,若觸發(fā)了告警,則會(huì)生成一個(gè)告警事件Event并寫入Redis數(shù)據(jù)庫中。Monapi(Alarm)則不斷地從Redis中讀取數(shù)據(jù),并給告警事件補(bǔ)充信息,然后生成一條真正要通知的告警消息Alert回推給Redis,Redis數(shù)據(jù)庫后面對(duì)接各種各樣的Sender發(fā)送模塊,發(fā)送模塊可以通過郵件、電話或、微信、釘釘、HTTP回調(diào)等方式推送告警消息。
Nginx作為反向代理來代理AMS、Job、RDB、Monapi、Transfer、Index的前端請(qǐng)求,負(fù)責(zé)用戶管理界面的呈現(xiàn)。RDB、AMS、Job三個(gè)組件主要用于與管理員的交互,RDB是用戶資源中心,AMS是資產(chǎn)管理系統(tǒng),Job是任務(wù)執(zhí)行中心。Agent除了上報(bào)監(jiān)控?cái)?shù)據(jù)給Transfer之外,還會(huì)上報(bào)本機(jī)信息給AMS,注冊(cè)本機(jī)信息到資產(chǎn)管理系統(tǒng),另外就是與Job模塊交互,拉取要執(zhí)行的任務(wù),上報(bào)任務(wù)執(zhí)行結(jié)果。Monapi是一個(gè)集成了Alarm和Portal模塊的綜合接口,提供API接口給上層應(yīng)用使用。比如配置告警策略存儲(chǔ)到數(shù)據(jù)庫中,并通過庫同步到Portal模塊。
3.3 關(guān)鍵指標(biāo)采集
監(jiān)控告警系統(tǒng)核心之一在于對(duì)指標(biāo)參數(shù)的采集,下面重點(diǎn)介紹一些關(guān)鍵指標(biāo)采集情況:
1)圖書館重要數(shù)據(jù)監(jiān)控指標(biāo)。讀者辦證、滯納金繳納等需要依賴圖書館自助設(shè)備實(shí)現(xiàn),實(shí)時(shí)監(jiān)控證卡消耗、現(xiàn)金存取等數(shù)據(jù)能及時(shí)提醒管理人員對(duì)設(shè)備作補(bǔ)證和清空錢箱等常規(guī)維護(hù)。得到數(shù)據(jù)之后,按照固有的json數(shù)據(jù)格式進(jìn)行封裝(監(jiān)控指標(biāo)名稱Metric、監(jiān)控實(shí)體Endpoint加多組監(jiān)控?cái)?shù)據(jù)和屬性標(biāo)簽key Value Tags),利用Agent組件的數(shù)據(jù)接收HTTP接口來獲取數(shù)據(jù)并推送給服務(wù)端。同樣的方式,長沙圖書館根據(jù)需求,以同樣的方式將實(shí)時(shí)借還書數(shù)據(jù)、無線認(rèn)證在線量、網(wǎng)站訪問量、機(jī)房動(dòng)環(huán)指標(biāo)等數(shù)據(jù)分別推送到夜鶯監(jiān)控系統(tǒng),完成實(shí)時(shí)監(jiān)控。異常告警及恢復(fù)推送結(jié)果如圖2、圖3所示。
//指標(biāo)數(shù)據(jù)json封裝
payload=[{...{"endpoint":ip,"metric": "Card", timestamp": ts, "step": 5, "value": Card_total,
"counterType": "GAUGE","tags": "card=total"} ] ...
//指標(biāo)數(shù)據(jù)以post方式發(fā)送至Agent接口,上傳至服務(wù)器
requests.post("http://ip:port/api/collector/push", data=json.dumps(payload))
2)網(wǎng)絡(luò)交換機(jī)狀態(tài)監(jiān)控。網(wǎng)絡(luò)交換機(jī)通過snmp(簡單網(wǎng)絡(luò)管理協(xié)議)采集交換機(jī)的各項(xiàng)監(jiān)控信息,并推送到夜鶯監(jiān)控系統(tǒng),而snmp協(xié)議采集需要對(duì)應(yīng)指標(biāo)的OID值(對(duì)象標(biāo)識(shí)符),根據(jù)不同的交換機(jī)型號(hào)調(diào)整采集時(shí)所使用的OID值。要監(jiān)控一臺(tái)設(shè)備須提前獲取該設(shè)備的MIB庫或者是直接聯(lián)系售后獲取對(duì)應(yīng)資源的OID值[8]。每個(gè)指標(biāo)對(duì)應(yīng)不同的OID值,獲取OID值就能實(shí)時(shí)監(jiān)控各項(xiàng)指標(biāo)的數(shù)據(jù),比如交換機(jī)溫度、接口流量、CPU使用率、內(nèi)存使用率、防火墻連接數(shù),等等。
3)其他指標(biāo)監(jiān)控。圖書館部分設(shè)備無法通過部署Agent組件進(jìn)行監(jiān)控,但又要列入監(jiān)控項(xiàng),如攝像頭、數(shù)據(jù)庫、網(wǎng)站響應(yīng)及日志分析統(tǒng)計(jì)等,為此長沙圖書館利用夜鶯監(jiān)控系統(tǒng)Prober模塊相對(duì)應(yīng)的ping、MySQL、NET_Response、Nginx等組件采集器來集中采集這些應(yīng)用。Prober模塊其實(shí)是使用Telegraf插件接口封裝而成的,Telegraf是一個(gè)開源的采集器,夜鶯監(jiān)控系統(tǒng)通過Telegraf采集各種中間件配置實(shí)現(xiàn)頁面化,直接在頁面上配置,可以同時(shí)承載大量采集任務(wù),某個(gè)采集器出現(xiàn)故障,也可以自動(dòng)摘除,有可靠的高可用保障。
3.4 對(duì)接微信實(shí)現(xiàn)告警消息實(shí)時(shí)推送
微信公眾平臺(tái)通過服務(wù)號(hào)、訂閱號(hào)、小程序、企業(yè)微信(原企業(yè)號(hào))等產(chǎn)品來滿足各類個(gè)體、組織通過微信開展服務(wù)的需求。服務(wù)號(hào)定位側(cè)重于提供更為強(qiáng)大的業(yè)務(wù)服務(wù)和用戶管理能力,訂閱號(hào)旨在為媒體和個(gè)人提供一種新的信息傳播方式,小程序可使開發(fā)者快速高效地開發(fā)一個(gè)小程序[9],企業(yè)微信是專業(yè)的辦公管理工具,支持與微信消息互通。訂閱號(hào)每天群發(fā)1條消息,服務(wù)號(hào)有每月群發(fā)4條消息的限制,無法滿足消息告警數(shù)量的限制,故而選擇企業(yè)微信來實(shí)現(xiàn)。
微信企業(yè)號(hào)發(fā)送監(jiān)控消息有對(duì)應(yīng)的Chat組件,注冊(cè)登錄企業(yè)微信后,添加企業(yè)應(yīng)用,生成AgentId和Secret,在Chat配置文件中填入正確的企業(yè)微信標(biāo)識(shí)CorpID、AgentId、AgentId,最后在Alarm組件中將IM消息的告警地址指向Chat服務(wù)地址即可完成企業(yè)服務(wù)微信與OpenFalcon告警消息的關(guān)聯(lián),運(yùn)維管理人員使用普通微信關(guān)注企業(yè)號(hào)就可以在微信聊天框中收到告警消息了。
3.5 對(duì)接Grafana實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)可視化
在實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)可視化方面,Grafana是一個(gè)流行的開源工具,它提供了豐富的數(shù)據(jù)可視化功能,可以十分輕松地與眾多監(jiān)控系統(tǒng)對(duì)接,夜鶯監(jiān)控系統(tǒng)提供專門的對(duì)接Grafana的數(shù)據(jù)接口。安裝和配置好Grafana后,即可通過拖拽和放置各種圖表、插件和過濾器的方式來創(chuàng)建自定義監(jiān)控儀表盤[10]。
4 應(yīng)用效果評(píng)價(jià)
自監(jiān)控系統(tǒng)上線并投入使用以來,我們不僅改變了原來被動(dòng)的工作狀態(tài),還實(shí)現(xiàn)了對(duì)整個(gè)業(yè)務(wù)流程的主動(dòng)監(jiān)控和有效管理。目前,我們能夠?qū)崟r(shí)監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài),及時(shí)發(fā)現(xiàn)并解決潛在的問題,確保了系統(tǒng)的穩(wěn)定性和可靠性。結(jié)合開源可視化工具Grafana,自定義監(jiān)控可視化監(jiān)控大盤,可迅速掌握全館重要設(shè)備和服務(wù)的基本狀態(tài),在網(wǎng)絡(luò)突發(fā)流量分析、故障快速定位處理等方面極大地提高了運(yùn)維工作效率,如圖4所示。
得益于企業(yè)微信豐富強(qiáng)大的功能,我們將一些常見運(yùn)維管理系統(tǒng)嵌入微信,這樣不但可以及時(shí)收取告警消息,還能在不登錄服務(wù)器的情況下進(jìn)行相關(guān)服務(wù)操作,如圖5、圖6所示。
5 結(jié) 論
綜上所述,基于Nightingale和微信實(shí)現(xiàn)的IT基礎(chǔ)設(shè)施實(shí)時(shí)監(jiān)控告警系統(tǒng)在圖書館具有很高的實(shí)用性。該系統(tǒng)不僅能跟隨開源社區(qū)進(jìn)行軟件迭代更新,還能靈活地進(jìn)行二次開發(fā),以支持未來不斷新增的軟硬件設(shè)施設(shè)備。這個(gè)系統(tǒng)大大提高了圖書館IT管理部門的工作效率和響應(yīng)速度,提高了圖書館IT基礎(chǔ)設(shè)施的可靠性和穩(wěn)定性,為圖書館的正常運(yùn)營和信息安全提供有力保障。
參考文獻(xiàn):
[1] 姚輝.云數(shù)據(jù)中心安全管理平臺(tái)設(shè)計(jì)及實(shí)現(xiàn) [D].北京:中國科學(xué)院大學(xué),2016.
[2] 鄭海山,林俊偉.圖書館數(shù)據(jù)中心運(yùn)維中開源軟件的應(yīng)用 [J].現(xiàn)代圖書情報(bào)技術(shù),2014(6):100-106.
[3] 張小龍.微信十年的產(chǎn)品思考 [EB/OL].[2023-10-18].https://developers.weixin.qq.com/community/business/doc/000ea481874f281ed59bd4ed854c0d.
[4] 滴滴開源.nightingale(夜鶯)v1.4.0介紹文檔 [EB/OL].[2023-10-18].https://gitee.com/didiglobal/nightingale-nightingale.
[5] 北京快貓星云科技有限公司.夜鶯項(xiàng)目介紹 [EB/OL].[2023-10-18].https://flashcat.cloud/docs/content/flashcat-monitor/nightingale/introduction/.
[6] 秦曉輝.開源運(yùn)維監(jiān)控系統(tǒng)Nightingale-系列04-架構(gòu)詳解 [EB/OL].[2023-10-18].https://www.bilibili.com/video/BV1K54y1R7wS/?spm_id_from=333.999.0.0&vd_source=5e64ee359d4c97a377f4dff2d4b2f123.
[7] 來煒.open-falcon v0.2項(xiàng)目介紹 [EB/OL].[2023-10-18].https://book.open-falcon.org/zh_0_2/intro/.
[8] 新華三技術(shù)有限公司.MIB概述 [EB/OL].[2023-10-18].https://www.h3c.com/cn/d_202112/1513630_30005_0.htm.
[9] 騰訊公司.微信公眾平臺(tái)賬號(hào)分類 [EB/OL].[2023-10-18].https://mp.weixin.qq.com/.
[10] Grafana Labs. About Grafana [EB/OL].[2023-10-18].https://grafana.com/docs/grafana/latest/introduction/.
作者簡介:邱會(huì)(1986—),男,漢族,湖南岳陽人,館員,本科,研究方向:數(shù)字圖書館建設(shè)。