剛剛在整理筆記的時候,發現兩年半前還在前公司就應該要發的文章一直躺在筆記裡面,快點整理一下 po 出來。
---
這是第三篇關於 log 的文章,應該也是最後一篇了,這次來聊聊如何讓開發者用 log 了解自己發出的 API 流程是否正確及如何提升效率。
強者小編同事用 python 寫的 log 整理工具,其實就是把 AP 吐出來的一堆多行 debug log,轉成只有 header、url、執行時間的單行 log。所以其實可以把產生出的 API log 再用其他 Linux 指令,即時顯示給開發者看。
---
這麼做的好處不少,對 frontend 來說,可以避免下列問題發生:
1. API 誤用:A 畫面應該是要串 a API,可是卻串到了 b API,又或是串成了 a' API。串成 b 是有點誇張啦,但最近 review 後發現 a' API 倒是比較常出現,像是參數帶錯之類的。
2. 誤解 API 流程:流程應該是串 abc,可是卻串成了 acb。有時候這不是什麼大問題,但在注重流程的 App 上這就很嚴重了。
3. API 狂發:流程應該是串 abc,但卻變成了 abbbcc。這個問題在使用上比較難發現,因為會有這類問題的大都是 GET API,依 RESTful GET API 的 idempotent 特性,無論執行多少次 GET,結果都會是一樣,所以也就更難發現問題了。
---
對 backend 來說的好處也不少:
1. 了解 cache 設計方向:像是剛剛的第 3 點問題,在 frontend 還沒更版前,backend 可以先加上 Cache-Control 機制,把大量的無效 request 從資料庫轉移到 Cache 裡面,當然 frontend 本來就要有這機制才行。
2. 了解每支 API 的效率:開發 API 沒幾個重點,就是流程正確、執行速度快,其中執行速度也是最難處理的一塊。所以了解 API 的處理速度,才有辦法做最佳化。
用這套工具就可以把上面提到的幾個重點一一檢視,也發了十幾個 issue 給 frontend 及 backend,算是 CP 值很高的一個開發。
---
至於技術細節,其實也就下面兩個重點而已:
1. 用 SocketIO 建置一套 WebSocket Server,然後放兩個輸入框,表示要訂閱 (subscribe) 的 log 來源及要監視的 user id
2. 用 tail -f 將 log 即時 pipe 到強者同事寫的 log 整理工具,再用 awk 把需要的欄位輸出,最後將輸出的欄位發送到 WebSocket Server
這個即時顯示 log 的網頁從發想到完成,工時應該只有兩三個小時吧,但發揮的效用可說是非常的大,今天就靠這個網頁開了十幾張單,算是最近小編蠻能說嘴的一項工作了吧 XDDD
* https://www.facebook.com/kewang.information/posts/2058766574399706
* https://www.facebook.com/kewang.information/posts/2085843121692051
#socketio #websocket #log
同時也有31部Youtube影片,追蹤數超過2,460的網紅野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch,也在其Youtube影片中提到,初見難易度スーパーハード Chapter 5 伝説 ▼前回 #30 http://youtu.be/ai2GbbedaHs ▼再生リスト https://www.youtube.com/playlist?list=PLcKJ_Q1yK4PitrJe8_X0t3qswDxjRK9Nl ゲーム概要...
「linux tail」的推薦目錄:
- 關於linux tail 在 Kewang 的資訊進化論 Facebook 的精選貼文
- 關於linux tail 在 紀老師程式教學網 Facebook 的最佳解答
- 關於linux tail 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最佳解答
- 關於linux tail 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最佳貼文
- 關於linux tail 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的精選貼文
- 關於linux tail 在 使用Linux tail 持續監看檔案輸出 的評價
- 關於linux tail 在 如何使用Linux 指令,tail 持續監看檔案輸出#176 - GitHub 的評價
- 關於linux tail 在 wrong output with my own implementation of the linux tail ... 的評價
- 關於linux tail 在 grep and tail -f? - Unix & Linux Stack Exchange 的評價
linux tail 在 紀老師程式教學網 Facebook 的最佳解答
[精選文章] 數個 Linux 命令列指令介紹
這篇文章介紹了幾個 Linux 命令列常用的指令,包含:grep、cut、sort、uniq、cat、tac、join、tail、head 等。不算完整,但若您有幾個指令不熟,好奇想知道它是做什麼的,可以參考看看。
小弟常說,學嵌入式系統的人,必須熟 Linux 命令列。那是因為您遠端登入開發板後,您只有命令列可以用。所以想加強 Linux 命令列的朋友,我會建議您花點時間看看,最好開台 Linux 試試,心得會更多喔!
http://kresimirbojcic.com/2011/11/22/unix-command-line-fu.html
「嵌入式系統開發簡介」免費遠距演講,今天晚上就要截止報名了。有興趣的朋友請至下列網址報名:
http://registrano.com/events/b44e4b
linux tail 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最佳解答
初見難易度スーパーハード
Chapter 5 伝説
▼前回 #30
http://youtu.be/ai2GbbedaHs
▼再生リスト
https://www.youtube.com/playlist?list=PLcKJ_Q1yK4PitrJe8_X0t3qswDxjRK9Nl
ゲーム概要
タイトル:ダストアンエリュシアンテイル/Dust: An Elysian Tail
ジャンル:アクションRPG
対応機種:PlayStation 4、Xbox 360、Windows、OS X、Linux、iOS
開発元:Humble Hearts
発売元:Humble Hearts
その他リンク
▼実況プレイチャンネル
https://www.youtube.com/c/nobusiletsplay
▼Blog
http://nobusiblog.blog.fc2.com/
▼Twitter
https://twitter.com/NOBUSI_SHOGUN
linux tail 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最佳貼文
初見難易度スーパーハード
Chapter 5 伝説
▼前回 #29
http://youtu.be/_GORGnm3PAc
▼次回 #31
http://youtu.be/0JSj9M_bURk
▼再生リスト
https://www.youtube.com/playlist?list=PLcKJ_Q1yK4PitrJe8_X0t3qswDxjRK9Nl
ゲーム概要
タイトル:ダストアンエリュシアンテイル/Dust: An Elysian Tail
ジャンル:アクションRPG
対応機種:PlayStation 4、Xbox 360、Windows、OS X、Linux、iOS
開発元:Humble Hearts
発売元:Humble Hearts
その他リンク
▼実況プレイチャンネル
https://www.youtube.com/c/nobusiletsplay
▼Blog
http://nobusiblog.blog.fc2.com/
▼Twitter
https://twitter.com/NOBUSI_SHOGUN
linux tail 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的精選貼文
初見難易度スーパーハード
Chapter 5 伝説
▼前回 #28
http://youtu.be/DpD-gEwhGl0
▼次回 #30
http://youtu.be/ai2GbbedaHs
▼再生リスト
https://www.youtube.com/playlist?list=PLcKJ_Q1yK4PitrJe8_X0t3qswDxjRK9Nl
ゲーム概要
タイトル:ダストアンエリュシアンテイル/Dust: An Elysian Tail
ジャンル:アクションRPG
対応機種:PlayStation 4、Xbox 360、Windows、OS X、Linux、iOS
開発元:Humble Hearts
発売元:Humble Hearts
その他リンク
▼実況プレイチャンネル
https://www.youtube.com/c/nobusiletsplay
▼Blog
http://nobusiblog.blog.fc2.com/
▼Twitter
https://twitter.com/NOBUSI_SHOGUN
linux tail 在 如何使用Linux 指令,tail 持續監看檔案輸出#176 - GitHub 的推薦與評價
https://shengyu7697.github.io/blog/2020/03/06/Linux-tail/ ... <看更多>
linux tail 在 使用Linux tail 持續監看檔案輸出 的推薦與評價
本篇將介紹如何使用Linux 下的tail 指令看檔案內容的最後幾行或持續監看檔案輸出,並簡單介紹tail 用法與範例。 範例tail 會讀取檔案的所有內容並將 ... ... <看更多>