一眼定位问题,函数计算发布日志关键词秒检索功能
聽說這個問題你也遇到了?
小王是一名程序員,最近在使用 FaaS(Function as a Service) 服務(wù)時遇到了一個頭疼的問題:他的 FaaS 應(yīng)用出現(xiàn)很多報錯,但是調(diào)用日志頁面的請求太多了,沒辦法簡單、快速地查到出現(xiàn) bug 的原因。
對小王來說,在開發(fā)、運(yùn)維時查看自己的應(yīng)用出現(xiàn)錯誤原本是稀松平常的事情,之前小王可以在服務(wù)器本地打印的日志中查看關(guān)鍵字,可以查看邏輯是否正確,再檢查下執(zhí)行環(huán)境中的報錯信息,錯誤根因基本就被發(fā)現(xiàn)了。現(xiàn)在,當(dāng)小王把應(yīng)用部署到云上并且將業(yè)務(wù)交付給 FaaS 服務(wù)商來執(zhí)行后,卻只能依賴于 FaaS 服務(wù)商提供的日志解決方案查詢相關(guān) debug 信息,沒有辦法像在服務(wù)器上進(jìn)行調(diào)試一樣,可以直接調(diào)查相關(guān)的錯誤原因并且進(jìn)行修復(fù)。
因?yàn)檫@個問題,小王每天都要在幾十、或者上百條調(diào)用日志的請求列表中,一點(diǎn)點(diǎn)用眼睛搜索,真的眼睛都要廢了, 于是忍無可忍的小王開啟了自救模式……
主流函數(shù)計(jì)算產(chǎn)品如何應(yīng)對?
小王對比了目前國內(nèi)的主流函數(shù)計(jì)算產(chǎn)品,他發(fā)現(xiàn)這些產(chǎn)品在日志層面有三個共同點(diǎn):
a. 均以自家的日志服務(wù)系統(tǒng)作為日志存儲依托;
b. 向用戶暴露請求列表頁,每一個請求下包含該請求的所有日志;
c. 均支持跳轉(zhuǎn)到日志服務(wù)進(jìn)行自主查詢,支持多函數(shù)寫入同一個日志倉庫
以上三個共同點(diǎn)看起來中規(guī)中矩,他們均采用自家成熟的日志服務(wù)作為日志存儲系統(tǒng),在保證日志安全性的同時也提供了不錯的查詢體驗(yàn);面向請求級別的日志也天然的為用戶做了隔離,也符合 FaaS 作為事件驅(qū)動的調(diào)性;但是均支持跳轉(zhuǎn)到所綁定的日志服務(wù)產(chǎn)品這一做法可能會褒貶不一。從全面性和準(zhǔn)確性上來說沒有任何問題,所綁定的日志服務(wù)可以作為用戶業(yè)務(wù)日志的 source-of-truth。
不好的是當(dāng)用戶面臨茫茫多的日志信息,其中混雜著多個應(yīng)用的信息和云服務(wù)的配置信息,無疑提高了使用成本,并且想要用好自助查詢這一功能,需要較長的學(xué)習(xí)周期。開發(fā)者進(jìn)行 debug 時最關(guān)心的就是 errorStack,但是在日志服務(wù)中,映入眼簾的更多是無用的信息。
你需要的和你看到的
阿里云函數(shù)計(jì)算助你一眼定位問題
優(yōu)化用戶的日志查詢體驗(yàn) - 面向文本的日志
為了讓用戶使用的更舒適,今年 2 月阿里云函數(shù)計(jì)算(FC)全新推出日志關(guān)鍵字搜索功能,目前已經(jīng)全網(wǎng)上線,接下來用幾個例子來講講小王是如何通過這個功能,快速定位請求日志,保住眼睛的。
(1)面向文本的日志
在調(diào)用日志 - 關(guān)鍵詞搜索頁面,開發(fā)者可以看到完整且詳細(xì)的當(dāng)前函數(shù)的業(yè)務(wù)日志(包含函數(shù)初始化、調(diào)用日志),在這里開發(fā)者只關(guān)注文本,函數(shù)計(jì)算幫助你甩掉了日志服務(wù)頁面中其他無用的信息。
(2)支持查詢、高亮
開發(fā)者使用關(guān)鍵詞搜索時,可以自定義鍵入文本。像頭圖中的用戶,可以直接在搜索搜索框中鍵入訂單號等特點(diǎn)信息,即可查詢到自己想要的日志信息。
具體操作請前往下方鏈接查看:
https://www.bilibili.com/video/BV1Cr4y1i7aU/
(3)支持簡單的查詢語句關(guān)聯(lián)操作
關(guān)鍵詞查詢搜索框支持使用 AND、OR、NOT 等字段鏈接文本 (與日志服務(wù)語法保持一致),為用戶的精細(xì)搜索提供了可能。
具體操作請前往下方鏈接查看:
https://www.bilibili.com/video/BV1ZS4y1m7Tf/
(4)對于自定義 Runtime 更友好
對于 custom-runtime、custom-container 等需要用戶高度自定義的 Runtime,也支持面向文本的日志顯示以及關(guān)鍵字搜索,這樣容器啟動的日志也自然地展示給了用戶。
阿里云函數(shù)計(jì)算(FC)以 custom-container 經(jīng)典的 python-flask 框架為例,可以看到容器啟動,python flask server 啟動的日志也可以展現(xiàn)在控制臺上。同理,initializer、自定義 Runtime 的日志都可以收集進(jìn)來。
打開試試
在阿里云函數(shù)計(jì)算 (FC) 函數(shù)詳情頁面,單擊調(diào)用日志,查詢當(dāng)前函數(shù)的調(diào)用記錄。通過關(guān)鍵詞搜索頁簽可以查看函數(shù)調(diào)用日志的內(nèi)容。
文檔鏈接:
https://help.aliyun.com/document_detail/73349.html
阿里云函數(shù)計(jì)算(FC)不止關(guān)注為用戶提供極高的工程效率、幫助用戶降本提效,也關(guān)心用戶使用我們的產(chǎn)品是否體驗(yàn)絲滑。
隨著業(yè)務(wù)量的攀升,用戶在日志方面的訴求也是越來越多,函數(shù)計(jì)算控制臺中的請求列表與關(guān)鍵字查詢的組合可以輕松覆蓋 100% 來自開發(fā)者的日志需求,讓您更快速定位問題,直接進(jìn)行業(yè)務(wù)日志的檢索。
總結(jié)
以上是生活随笔為你收集整理的一眼定位问题,函数计算发布日志关键词秒检索功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于 EventBridge 构建 Sa
- 下一篇: 阿里巴巴副总裁陈丽娟:我对阿里云产品生态