精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

多彩換新PHP代碼0報錯進化之路

企業動態
多彩換新PHP代碼0報錯進化之路,我們在解決報錯的時候解決了很多意料之外的問題,一些不被關注的問題。

寫在前面

PHP在運行過程當中會有各種各樣的錯誤報出,有很多卻被忽略了,比如下面幾個:

眾所周知,其實PHP工程師很容易犯一個開發中經常會犯的小毛病,即使用數組的時候會不小心直接使用一個并不存在的key,如下代碼:

$array = array("a" => "1", "b" => "2");

$use = $array["c"];

其實很簡單,大家都知道會報一個PHP Notice級別的錯誤,并不會影響代碼向下執行,測試環境報在頁面上可能會不美觀,但你測試的時候恰好數據是全的,沒有看到,到線上又不影響使用,所以很少有人會關注。

再舉個例子:

Warning: Invalid argument supplied for foreach() in

這個相信大家如果打開php的 error log 也經常會見到,意思也很明顯,就是循環了一個錯誤的數組,foreach 的***個參數必須是一個數組。

當然,大家還會看到諸如Parse error,Fatal error的錯誤提示,代碼量小的時候大部分人都選擇忽略了,但是多彩的小木工還是做了一些小小的工作,把php的 error log 由多變少,***變成了0。先給大家看一下我們的成果:

C:\Users\Administrator\Desktop\贊美多彩文章技術部張慶龍\贊美多彩文章技術部張慶龍\media\15015738524720\15016419373806.jpg

可以看到開始我們的 error log 有21M之多,***變成了現在的沒有了!

雖然有一些bug改起來還是比較棘手的,但大部分其實代碼作者看到就明白是什么問題了,但是如果他從不知道,也沒有系統的看到,就永遠可能不會去修改了。這時候一個能自動分析log并把相關問題發送給對應責任人的腳本就呼之欲出了。

寫在中間(腳本設計)

首先由于這本身定義為一個分析日志的腳本,怕是log文件過大分析的時候占用生產機資源,因為我們本身就有生產機使用消息隊列機制同步日志到開發機的現成流程,所以就直接用了。

  • php_error_log 同步到非生產機

可以和大家分享的是多彩使用了nsq 。不斷的把生產機log同步到非生產機。這里呢是一位瓦工小哥使用go弄了一個小工具來實現tail的功能來直接把log不斷發送到消息中心。***寫到非生產機以供分析。

  • 分析 log 文件的內容

好,log文件有了,下面開始寫腳本,linux有個awk命令灰常好用,能順利完成我們的需求,所以我們直接選用shell腳本來搞。
大家可以對比自己的error_log修改相關細節。

先寫一個awk命令:
awk -v today="31-Jul-2017" -FAsia/Chongqing] '{if($0~today) print $2}' 20170731.log | sort | uniq -c | sort -k1nr | grep 'on line'
我們用時區切割將真正需要的當天錯誤詳情拿出來,排序。
這里面有一個需要說明的地方,為什么在uniq之前要先sort,因為實測uniq的統計,是在相鄰的行一樣的時候才能夠合并計數,所以我們先排序使得相同的錯誤能夠在相鄰的行。***你得到的結果應該是這樣的:

960 PHP Notice: some notice in /some/path/notice.php on line 119

850 PHP Warning: some Warning in /some/path/warning.php on line 110

***列是錯誤發生的次數,后面分別為錯誤詳情以及文件包括代碼所在的行。
到這里其實已經可以完成一部分需求了,只是需要大家自行認領相關問題,因為多彩使用了git作為倉庫,我們還可以做的更好。

  • 使用 git blame 獲取作者和相關代碼詳情

關鍵代碼:

code_writer=$(git blame -L$file_line,$file_line -e $file_name | awk 'BEGIN{FS=")"} {print $1}' | awk -F '[<>]' '{print $2}')

code_content=$(echo $(git blame -L$file_line,$file_line -e $file_name | awk 'BEGIN{FS=")"} {print $2}') | sed 's/^ //g;s/ $//g')

解釋一下,當你使用git blame -e 命令的時候,可以得到如下類似的結果:

d8eabd28c (<mumulaonian@gmail.com> 2017-07-12 16:58:38 +0800 4) * // some code by akmumu

-L 參數是查看指定行的結果,如代碼所示,再使用awk和sed可以獲得作者郵箱和代碼詳情。

其實到這里為止你已經可以搞一個循環生成一個包含table的html源碼,然后通過郵件服務器發給相關的人了,作者看到,大概很快就能搞掉一半的報錯了,希望幾天之后你們也可以做到 error_log 文件 0KB。但如果你們也恰好使用自己搭建的gitlab管理代碼,那么其實還可以做的更多。

  • 使用gitlab的相關Api完成一些自動化的事情

其實gitlab提供給了我們很多的Api,你可以用之來做很多的事情,可以自由選擇一些使用,比如我們有使用issues相關的Api,直接創建issue,文檔:issues文檔。

你如果也使用了 capistrano 和 gitlab CI 作為自動化部署工具,那么你還可以在完成修復issue的 merge request 之后將當天的相關報錯log通過shell刪掉,這樣明天的通知在確實不存在本bug的情況下將不會存在相應log,這里很簡單,還用 sed 即可。

當然CI的腳本也有很多想象空間,大家自由發揮好了。

寫在后面

我們在解決以上報錯的時候解決了很多意料之外的問題,一些不被關注的問題,還有某個服務的一個不常用的小部分其實已經有兩天不可用的情況了,幸好比較及時,沒有發生太多的損失。所以說此log是急需被關注的,如果你還沒有做,就抓緊開始吧,不要應驗這句話,”那些年里看到了,懂了,卻不做“。

責任編輯:張燕妮 來源: 51CTO
相關推薦

2017-02-17 07:12:24

2024-02-04 09:13:24

基礎設施代碼DevOps

2013-07-31 10:31:46

應用搜索雷電搜索移動應用

2018-03-25 21:30:31

深度學習發展之路神經進化

2010-01-27 10:29:39

C++代碼解析

2022-05-09 11:29:42

架構數據

2018-05-25 10:51:50

數據保護進

2025-08-13 09:13:00

2019-07-29 08:07:57

工業互聯網互聯網平臺IIOT

2025-10-30 08:00:00

SaaSAI自動化

2022-06-17 18:32:54

開源大數據數據調度

2016-10-19 20:34:46

2024-03-05 10:34:33

KubernetesPod云原生

2024-12-24 07:20:00

C++std::anyC++17

2024-12-26 08:00:38

2024-09-26 10:29:56

數據中臺數據飛輪

2017-04-14 14:57:03

機器學習學習資源

2010-01-06 16:02:53

2011-06-15 16:58:26

PHP
點贊
收藏

51CTO技術棧公眾號

666av成人影院在线观看| 日韩精品一二| 在线观看视频免费一区二区三区| 亚洲视频1区2区| 波多野结衣精品久久| 国产精品视频久久久久久久| 波多野结衣在线观看一区二区三区| 最新国产成人在线观看| 91亚洲精华国产精华| 日韩精品一区二区三| 欧美亚洲国产一区| 欧美精品一区二区久久久| wwwwxxxx日韩| 欧美1—12sexvideos| 久久久久九九视频| 97se视频在线观看| 糖心vlog精品一区二区| 激情欧美一区| 久久久极品av| 蜜桃久久精品成人无码av| 日本少妇精品亚洲第一区| 色综合天天做天天爱| 精品人妻人人做人人爽| 最新97超碰在线| 久久亚洲影视婷婷| 99理论电影网| 国产人妖一区二区三区| 男人的天堂亚洲在线| 欧美大荫蒂xxx| 乱老熟女一区二区三区| 九九久久精品| 亚洲精品456在线播放狼人| 下面一进一出好爽视频| 久久91视频| 欧美性猛交xxxx乱大交极品| 六月婷婷激情综合| 在线h片观看| 国产精品久久久一本精品| 欧美第一黄网| 香蕉av一区二区三区| 高清在线不卡av| 91国产丝袜在线放| 99热这里只有精品1| 久久99这里只有精品| 国产精品18久久久久久麻辣| av黄色在线播放| 亚洲一区日本| 91高清视频免费| 日韩三级视频在线| 99在线|亚洲一区二区| 欧美大片欧美激情性色a∨久久| 国产精品边吃奶边做爽| 精品三级在线观看视频| 亚洲精品国偷自产在线99热| 中文字幕第3页| 欧美性生活一级片| 精品无码久久久久久国产| av鲁丝一区鲁丝二区鲁丝三区| 先锋欧美三级| 欧美在线视频你懂得| 五月婷婷丁香综合网| 99久久婷婷国产综合精品首页 | 欧美视频导航| 久久91亚洲精品中文字幕| 国产激情无码一区二区三区| 小处雏高清一区二区三区| 精品国产欧美一区二区三区成人| 国产成人精品无码片区在线| 久久porn| 亚洲深夜福利在线| 国产日韩精品中文字无码| 99久久久久国产精品| 日韩视频欧美视频| 清纯粉嫩极品夜夜嗨av| 伊人精品成人久久综合软件| 91精品国产99| 探花国产精品一区二区| 狠狠狠色丁香婷婷综合久久五月| 欧美一区第一页| wwwwww在线观看| 国内成人免费视频| 国产精品一区二区三区在线观 | 男女全黄做爰文章| 91久久夜色精品国产按摩| 色偷偷88888欧美精品久久久| 国产三级国产精品| 精品久久中文| 欧美裸体男粗大视频在线观看 | 亚洲精品大片www| 国产一区二区四区| 电影天堂国产精品| 日韩视频在线永久播放| 精品无码国产一区二区三区51安| 国产一区精品二区| 精品网站999www| 日本精品在线免费观看| 亚洲二区精品| 国产伦精品免费视频| 国产成人三级在线播放| xnxx国产精品| 黄色网址在线免费看| 美女网站在线看| 欧美日本国产一区| 又黄又爽的网站| 欧美成人激情| 2019国产精品自在线拍国产不卡| 欧美成人aaaaⅴ片在线看| 丝袜美腿高跟呻吟高潮一区| 亚洲一区二区免费| 国模吧精品人体gogo| 亚洲一区二区四区蜜桃| 国内自拍视频网| 果冻天美麻豆一区二区国产| 综合久久五月天| 日本学生初尝黑人巨免费视频| 欧美在线资源| 国产精品久久久久久久久久新婚| 免费一级a毛片| 成人性生交大片免费 | 精品在线观看入口| 久久久久久久97| 亚洲自拍第二页| 972aa.com艺术欧美| 天天做天天爱天天高潮| **在线精品| 亚洲精品国精品久久99热| 欧美国产在线看| 黄一区二区三区| 亚洲人久久久| av在线一区不卡| 亚洲欧洲在线免费| 可以在线观看av的网站| 岛国精品一区二区| 国产情侣第一页| 欧美国产中文高清| 精品国产一区二区三区久久狼黑人| 黑鬼狂亚洲人videos| 日本少妇一区二区| 欧美性色黄大片人与善| 黄色亚洲网站| 亚洲天堂男人天堂| 欧美国产一级片| 久久精品视频在线免费观看| 欧在线一二三四区| 精品国产乱码久久久| 国产成人精品网站| 黄网在线免费| 欧美无乱码久久久免费午夜一区| 欧美精品色视频| 亚洲电影在线一区二区三区| 国产日韩欧美中文在线播放| www.亚洲视频| 欧美日韩午夜在线视频| 懂色av粉嫩av浪潮av| 美女www一区二区| 亚洲女人毛片| 婷婷久久免费视频| 欧美成人黑人xx视频免费观看| 日韩人妻精品中文字幕| 91丨porny丨首页| 成人羞羞国产免费网站| 欧美伦理影院| 91久久精品国产91性色| 18av在线播放| 亚洲成人黄色在线| 午夜精品久久久久久久久久久久久蜜桃| 欧美aaaaaa午夜精品| 亚洲精品国产精品国自产观看| 97超碰免费在线| 国产视频久久久| 中国老头性行为xxxx| 亚洲少妇屁股交4| 日本性生活一级片| 国产麻豆综合| 一级做a爰片久久| 日韩激情精品| 91产国在线观看动作片喷水| 你懂的免费在线观看视频网站| 亚洲精品国产精华液| 91成人在线观看喷潮蘑菇| 亚洲一级在线| 在线视频精品一区| 999在线精品| 国产高清视频一区三区| 粗大黑人巨茎大战欧美成人| 欧美精品一区二区不卡| 国产成人av免费| 一区二区三区四区av| 亚洲最大成人网站| 国产自产高清不卡| 久久国产成人精品国产成人亚洲| 7m精品国产导航在线| 国产成人av在线| av毛片在线| 亚洲欧美日韩成人| 国产哺乳奶水91在线播放| 狠狠爱在线视频一区| 四虎永久免费在线| 久久久午夜精品理论片中文字幕| 欧美视频免费播放| 亚洲乱码精品| 欧美日韩视频在线一区二区观看视频| 黄色漫画在线免费看| 在线精品国产欧美| 偷拍精品一区二区三区| 欧美狂野另类xxxxoooo| 伊人中文字幕在线观看| 亚洲精品乱码久久久久久黑人| 粉色视频免费看| 国产一区二区三区四区五区| 98国产高清一区| 中文.日本.精品| 91av在线播放| 青青在线视频| 裸体女人亚洲精品一区| 国产在线电影| 亚洲缚视频在线观看| 国产又黄又猛又爽| 日本韩国精品在线| 国内免费精品视频| 一区二区三区精密机械公司| 亚洲精品国产精品国自| 91视频在线观看免费| 国产探花一区二区三区| 国产主播一区二区三区| 九九热免费精品视频| 亚洲制服av| 成人性免费视频| 亚洲午夜91| 91看片淫黄大片91| 伊人青青综合网| 日本特级黄色大片| 欧美mv日韩| 日韩欧美视频一区二区三区四区| 自拍偷拍亚洲图片| 国产精品永久免费视频| 成人国产精品| 国产成人精品免费视频| 亚洲一区二区三区四区| 国产91色在线| 高清电影一区| 国产精品高清在线| av亚洲一区| 国产精品入口日韩视频大尺度| www在线视频| 久久伊人精品天天| 麻豆传媒在线免费| xxx欧美精品| 国产cdts系列另类在线观看| 久久久成人的性感天堂| 麻豆传媒在线免费看| 久久av红桃一区二区小说| 久久久久久国产精品免费无遮挡| 亚洲国产女人aaa毛片在线| 亚洲国产精品国自产拍久久| 日韩精品一区二区三区四区 | 欧美一区二区三区视频免费播放| 国产精品theporn动漫| 亚洲国产精品一区二区www在线| 日本二区在线观看| 国产精品久久久久久福利一牛影视 | 国产精品久久久免费看| 中文字幕日韩精品一区| 欧美精品一级片| 精品久久久久久国产| www.久久精品视频| 欧美日韩一区二区三区四区五区 | eeuss一区二区三区| 一区二区三区国产好| 国产综合动作在线观看| 伊人久久大香线蕉| 在线看无码的免费网站| 国内精品福利| 亚洲成熟丰满熟妇高潮xxxxx| 激情丁香综合| 女性隐私黄www网站视频| 蜜桃在线一区二区三区| 亚洲 自拍 另类 欧美 丝袜| 99久久国产综合色|国产精品| 永久av免费在线观看| 成人手机电影网| 日本理论中文字幕| 一区二区三区四区五区视频在线观看 | 亚洲一区二区天堂| 精品国产制服丝袜高跟| 免费在线黄色网址| 久久成人精品视频| 麻豆mv在线看| 成人精品在线观看| 午夜欧洲一区| 日韩人妻一区二区三区蜜桃视频| 婷婷成人基地| 黄色免费视频大全| 国产真实乱偷精品视频免| japanese在线观看| 自拍偷在线精品自拍偷无码专区| 成人免费视频入口| 亚洲成人第一页| 一级aaaa毛片| 亚洲国产精品久久久久秋霞不卡| 天堂av2024| 久久激情视频免费观看| 中文在线最新版地址| 亚洲一区二区三区在线免费观看| av在线成人| 欧美一区二区福利| 亚洲午夜一区| 中文av字幕在线观看| 久久精品亚洲国产奇米99| 国产一级片免费看| 欧美福利视频导航| xxxxx日韩| 日韩av免费网站| 丁香综合av| 玖玖精品在线视频| 老司机午夜精品| 在线免费观看污视频| 亚洲精品国产视频| 91丨porny丨在线中文 | 91人妻一区二区三区| 久久精品一区二区三区不卡| 久久亚洲精品大全| 在线播放日韩导航| 色网站免费在线观看| 国产精品精品视频一区二区三区| 国产极品久久久久久久久波多结野| 国产精品久久久久久亚洲影视 | 久久久久久九九九九九| 午夜日韩在线观看| 亚洲精品视频网| 欧美另类第一页| 99这里只有精品视频| 欧美交换配乱吟粗大25p| 国产麻豆9l精品三级站| 性色国产成人久久久精品| 欧美调教femdomvk| 国产大学生校花援交在线播放| 久久综合久中文字幕青草| 免费一级欧美在线观看视频| 日韩精品久久一区| 日韩av一二三| 成人无码精品1区2区3区免费看| 亚洲自拍欧美精品| www.久久精品.com| 欧美日韩第一视频| 成人在线超碰| 成人毛片一区二区| 久久婷婷国产综合国色天香 | 亚洲成av人片一区二区梦乃 | 亚洲一区二区三区高清不卡| 扒开伸进免费视频| 精品久久久久久久大神国产| 香蕉国产在线视频| 国产成人福利网站| 大片网站久久| 手机视频在线观看| 亚洲欧洲成人精品av97| 国产suv精品一区二区69| 欧美极品少妇与黑人| 激情小说一区| 日本www高清视频| 国产精品第五页| www.中文字幕| 欧美又大又粗又长| 欧美日韩激情| 日本中文字幕在线不卡| 亚洲国产精品视频| 青青青手机在线视频观看| 国产精品天天狠天天看| 正在播放日韩欧美一页 | 国产树林野战在线播放| 国产精品69久久久久水密桃| 日韩成人在线免费视频| 亚洲奶大毛多的老太婆| 久久久成人av毛片免费观看| 一区二区三区四区| 高清在线成人网| 在线观看你懂的网站| 久久国产精品亚洲| 农村少妇一区二区三区四区五区| 国产成人一区二区三区别| 91美女蜜桃在线| 国产免费无遮挡| 91精品国产乱码久久久久久久久| 亚洲天堂av资源在线观看| 91免费黄视频| 国产精品国产a级| 日本xxxxxwwwww| 国产欧美在线看| 中文亚洲免费| 麻豆视频在线免费看| 亚洲女人初尝黑人巨大| 久久国际精品| 国产成人无码av在线播放dvd| 26uuu亚洲婷婷狠狠天堂| 亚洲无码精品在线播放| 午夜精品久久久99热福利| 久久亚洲国产| 欧美深性狂猛ⅹxxx深喉 | 欧美高清中文字幕|