java開源APM概要

候選APM

韓國的一個公司開源的,有待評估使用狀況,就是總體還不是JDK8,有些仍是有點費勁,技術上採用agent的方式,對java友好git

看接入的公司仍是挺多的,我的感受是點評名氣還能夠,可是搭建起來有點費勁,不少東西都寫死配置了,不靈活。總體設計的話,因爲沒有采用agent的方式,採用的是api手工埋點的方式,跟SNG的很像,好處的是跨語言,很差的地方就是對java來講用起來還須要包裝一下spring

開發團隊加入了OneAPM,目前看使用的公司很少,總體技術採用agent方式,對java友好。提供了對dubbo等的支持,屬於soa時代的產品架構

技術架構

pinpoint

clipboard.png

CAT

clipboard.png

skywalking

clipboard.png

簡要評價

從技術架構上看,對於log的存儲都使用了hbase,也都是本身實現了日誌/監控數據的上報。pinpoint支持udp的方式,這個好一點。這類仍是有點SOA時代的痕跡,更爲符合大數據時代的作法是,監控數據丟給kafka,而後監控server來消費數據便可,這一點在cat中使用了consumer有點這個味道,可是沒有完全轉型過來。app

展望

APM總體的功能結構,主要是 1.日誌追蹤,2.監控報警 3.性能統計。對於日誌追蹤,已經有spirng cloud zipkin了,這個對spring cloud體系結合的很好,確的就是監控報警和性能統計,能夠採用agent的方式進行無侵入的監控,或者採用log appender的方式到kafka,以後再進行error的監控報警,以及把performance的數據log到日誌,發送到kafka來進行統計。分佈式

docs

相關文章
相關標籤/搜索