成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

全棧必備Log日志

大數(shù)據(jù)
Log日志,不論對開發(fā)者自身,還是對軟件系統(tǒng)乃至產品服務都是非常重要的事情。每個開發(fā)者都接觸過日志,以至于每個人對日志的了解都會有所不同。

Log日志,不論對開發(fā)者自身,還是對軟件系統(tǒng)乃至產品服務都是非常重要的事情。每個開發(fā)者都接觸過日志,以至于每個人對日志的了解都會有所不同。

[[193908]] 

什么是日志

日志是什么呢?老碼農看來,日志是帶有明確時間標記的信息數(shù)據(jù)記錄。

根據(jù)不同的使用場景和視角,日志的分類也多種多樣。針對生成日志的主體,如果是開發(fā)者,可以有工作或學習日志,如果是代碼,可以是程序日志。根據(jù)應用程序的使用領域,可以有系統(tǒng)日志和應用日志,還可以進一步細分,例如消息日志,事件日志,數(shù)據(jù)庫日志等等。

記日志的方式

對于開發(fā)者而言,隨手記日志(筆記)是一個良好的工作習慣。將工作或學習中遇到的問題,解決方案,新的體會隨時記下來,日積月累,就可以逐漸形成自己的知識體系。作為一個Evernote 的深度用戶,老碼農推薦使用Evernote,當然有道云筆記之類的其他工具同樣有效。開發(fā)者自身的日志一般都是給自己看的,記錄工作或學習日志的方式因人而異,適合自己就好。

而程序代碼中的日志,多用于應用中相關信息的跟蹤記錄,要便于其他開發(fā)者或者其他應用程序使用,一般是由日志標準的。廣泛使用的日志記錄標準是RFC 5424(https://tools.ietf.org/html/rfc5424)中定義的syslog。 syslog標準能夠標準化系統(tǒng)生成,過濾,記錄和分析日志消息。例如,其中定義的日志重要等級是這樣的:

  1. Emergency: system is unusable 
  2.   Alert: action must be taken immediately 
  3.    Critical: critical conditions 
  4.   Error: error conditions 
  5.    Warning: warning conditions 
  6.   Notice: normal but significant condition 
  7.   Informational: informational messages 
  8.    Debug: debug-level messages  

在實際應用中,根據(jù)應用場景,有可能不完全遵從RFC 5424, 但依然可以從各種各樣日志工具庫中看到他們的影子,參考《全棧的技術棧設想》,對于全棧必備的幾種編程語言而言,Java中的Log4j,Python 中的Logging, JavaScript 中的log4JS都是不錯的選擇,遺憾的是,老碼農沒有在Objective C 中使用過較好的日志庫,還在用將nslog 寫入文件的方式記日志,在C/C++中到是曾經(jīng)用過log4CXX以及zlog。

在python 的世界里,有著這樣相對偏執(zhí)的說法,“以日志調試為榮,以單步跟蹤為恥”。雖然有矯枉過正的嫌疑,但充分說明了記log日志的重要性。

常見應用中的日志

成熟的系統(tǒng)中都有著自己的日志子系統(tǒng),例如windows的系統(tǒng)日志,Linux的syslog,docker的容器日志等。這里簡要回顧一些常見后端服務中的日志:Nginx日志,mysql 日志 和 tomcat 日志。

Nginx日志主要分為兩種:訪問日志和錯誤日志。訪問日志主要記錄客戶端訪問Nginx的每一個請求,格式可以自定義。通過訪問日志,可以得到用戶地域來源、跳轉來源、使用終端、某個URL訪問量等相關信息。錯誤日志主要記錄客戶端訪問Nginx出錯時的日志,格式不支持自定義。通過錯誤日志,可以得到系統(tǒng)某個服務或server的性能瓶頸等。在分析nginx 日志時, 老碼農目前比較喜歡的工具是goaccess.

Tomcat下相關的日志文件有Cataline引擎的日志文件,文件名catalina.日期.log;Tomcat下內部代碼丟出的日志,文件名localhost.日期.log;Tomcat下默認manager應用日志,文件名manager.日期.log ;控制臺輸出的日志,Linux下默認重定向到catalina.out ;通過Servlet.xml配置的Access日志,應用程序以log4j.properties:${catalina.base}/logs/probe.log重定向的日志等等。 就分析工具而言,老碼農目前覺得Awstats是個不錯的工具。

MySQL有以下幾種日志:

  1. 錯誤日志:記錄啟動、運行或停止時出現(xiàn)的問題,一般也會記錄警告信息。
  2. 一般查詢日志:記錄建立的客戶端連接和執(zhí)行的語句。
  3. 慢查詢日志:記錄所有執(zhí)行時間超過longquerytime秒的所有查詢或不使用索引的查詢,可以幫我們定位服務器性能問題。
  4. 二進制日志:任何引起或可能引起數(shù)據(jù)庫變化的操作,主要用于復制和即時點恢復。
  5. 中繼日志:從主服務器的二進制日志文件中復制而來的事件,并保存為的日志文件。
  6. 事務日志:記錄InnoDB等支持事務的存儲引擎執(zhí)行事務時產生的日志。

MySQL 中的日志不僅僅是跟蹤信息,而且成為了業(yè)務系統(tǒng)的一部分。就日志分析而言,老碼農最喜歡的就是percona-toolkit了,尤其是其中的慢查詢分析工具pt-query-degist.

根據(jù)應用中的日志,可以獲知系統(tǒng)中更有價值的信息,而且可以為自己的日志系統(tǒng)提供資糧。

日志分析平臺

對單應用實體的日志分析,可以有一些非常不錯的工具,例如上面提到的pt,goaccess等等。但是,對于整個應用系統(tǒng)而言,在工作流或任務鏈上的每個服務組件都會產生日志,那么如何分析整個業(yè)務系統(tǒng)的日志呢?

老碼農覺得ELK是日志分析平臺的一個上佳選擇。ELK由Elasticsearch、Logstash和Kibana三部分組件組成:Elasticsearch是個開源分布式搜索引擎,它的特點是分布式,零配置,自動發(fā)現(xiàn),索引自動分片,索引副本機制,restful風格接口,多數(shù)據(jù)源,自動搜索負載等。Kibana 是一個開源和免費的工具,可以為 Logstash 和 ElasticSearch 提供日志分析結果的Web可視化界面,匯總、分析和搜索重要數(shù)據(jù)日志。Logstash是一個完全開源的工具,可以對各種日志進行收集、分析,并將其存儲供,logstash 的工作示意圖如下: 

 

在ELK方案中,logstash 進行日志采集和預處理,ES 完成分布式檢索,Kibaba 做最終的分析結果可視化。隨之需求的變化, 基于ELK 之上還有很多變種,例如引進Kafka消息隊列,增加Storm 實時分析等等,都使得基于日志的應用實現(xiàn)更大的價值化。

更進一步,會形成統(tǒng)一日志平臺,逐漸形成業(yè)務系統(tǒng)的一部分,例如支持數(shù)據(jù)的最終一致性等等。連自己都沒想到,日志居然如此的豐富多彩,還有很多有趣的問題,例如日志的動態(tài)開關配置,日志傳輸中的準實時性,寫日志的性能損耗等等。

[[193909]] 

綜上,log日志的紀錄和分析,不僅僅是一種全棧必備的技能,更是一種開發(fā)者的基本素養(yǎng)。 

責任編輯:龐桂玉 來源: 36大數(shù)據(jù)
相關推薦

2017-06-13 08:55:29

Log日志MySQL

2017-04-06 10:27:01

JavaScript基礎Java

2020-07-20 08:23:04

Redis分布式系統(tǒng)

2017-10-12 14:24:24

2021-06-01 07:16:21

C語言基礎代碼

2017-08-07 13:02:32

全棧必備貝葉斯

2023-12-10 20:30:51

SQL工具數(shù)據(jù)

2017-04-12 14:45:20

數(shù)據(jù)架構數(shù)據(jù)源

2015-08-17 09:27:51

全棧工程師Devops工具周期表

2017-12-18 15:33:56

Java基礎編程

2023-08-21 09:51:57

全棧軟件開發(fā)

2017-11-10 19:00:37

華為

2023-07-03 00:47:23

2013-12-09 09:42:50

JavaScript全棧式

2018-01-09 15:35:54

Python編程基礎

2017-07-05 11:09:35

華為開發(fā)云

2025-01-14 01:00:00

日志接口Log4j

2017-07-31 12:00:42

創(chuàng)業(yè)必備工具棧

2022-12-15 08:44:52

2022-07-26 07:47:14

架構
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久aⅴ乱码一区二区三区 91综合网 | 久久国| 草b视频 | 99精品一区二区 | 久久久九九 | av在线天堂网 | 一区视频在线免费观看 | 黄网站免费在线观看 | 天天爽网站 | 亚洲午夜精品久久久久久app | 欧美黄色性生活视频 | 国产精品人人做人人爽 | 欧美成人一级 | 北条麻妃av一区二区三区 | 国产成人一区二区 | caoporn免费在线视频 | 97精品超碰一区二区三区 | 国产精品视频网 | 99热这里都是精品 | 日本欧美在线视频 | 午夜精品一区二区三区在线观看 | 一区二区三区四区不卡视频 | 久久精品久久久久久 | 三级黄色片在线播放 | 日韩人体视频 | 一级毛片网 | www.天天操.com | 激情五月婷婷综合 | 久久久久国产一区二区三区 | 精品久久久久久久久久 | 一区二区在线不卡 | 精产国产伦理一二三区 | 午夜视频免费在线观看 | 一级在线免费观看 | 国产精品久久久久久久久图文区 | 中文字幕 亚洲一区 | 精品久久久网站 | 亚洲精品视频免费观看 | 精品一区二区三区视频在线观看 | 亚洲一区二区三区欧美 | 在线免费观看a级片 |