微服務(wù)異常太亂启绰,我們?nèi)绾畏诸悾?/h1>

Elastic APM 是基于 Elastic Stack 構(gòu)建的應(yīng)用性能監(jiān)控系統(tǒng)炎功。通過 Elastic APM 可以監(jiān)控應(yīng)用程序虎囚,收集有關(guān)請求的響應(yīng)時間邻寿、數(shù)據(jù)庫查詢伯复、高速緩存調(diào)用搞莺、外部 HTTP 請求等的詳細(xì)性能信息,這樣可以更快地查明并修復(fù)性能問題疚鲤。

Elastic APM 還會自動收集未處理的錯誤和異常锥累,錯誤主要基于堆棧跟蹤進行分組,因此可以識別出現(xiàn)的新錯誤集歇,并密切關(guān)注特定錯誤發(fā)生的次數(shù)桶略。

Elastic APM

kibana

Kibana 是開源的分析和可視化平臺,旨在與 Elasticsearch 協(xié)同工作鬼悠,可以通過 Kibana 搜索删性、查看 Elasticsearch 中存儲的數(shù)據(jù),此處用于可視化 Elasticsearch 中存儲的 APM 數(shù)據(jù)

目錄

mkdir /app
cd /app

下載

wget https://artifacts.elastic.co/downloads/kibana/kibana-6.5.4-linux-x86_64.tar.gz

解壓

tar -zxvf kibana-6.5.4-linux-x86_64.tar.gz 
cd kibana-6.5.4-linux-x86_64/

配置

vi config/kibana.yml

[root@JD kibana-6.5.4-linux-x86_64]# vi config/kibana.yml 
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.url: "http://47.99.88.28:9200"

啟動

nohup ./bin/kibana &

訪問Kibana

image

APM監(jiān)控

image

搭建apm-server

APM Server 是用 Go 編寫的開源應(yīng)用程序焕窝,通常運行在專用服務(wù)器上蹬挺,默認(rèn)監(jiān)聽端口 8200 ,并通過 JSON HTTP API 從 agent 接收數(shù)據(jù)它掂,然后根據(jù)該數(shù)據(jù)創(chuàng)建文檔并將其存儲在 Elasticsearch 中巴帮。

wget https://artifacts.elastic.co/downloads/apm-server/apm-server-6.5.4-linux-x86_64.tar.gz

配置文件

[root@demo03 apm-server-6.5.4-linux-x86_64]# vi apm-server.yml 
apm-server:
  # Defines the host and port the server is listening on.  use "unix:/path/to.sock" to listen on a unix domain socket.
  host: "0.0.0.0:8200"
  run:
    enabled: true
output.elasticsearch:
  # Array of hosts to connect to.
  # Scheme and port can be left out and will be set to the default (http and 9200)
  # In case you specify and additional path, the scheme is required: http://localhost:9200/path
  # IPv6 addresses should always be defined as: https://[2001:db8::1]:9200
  hosts: ["47.99.88.28:9200"]

  indices:
    - index: "apm-%{[beat.version]}-sourcemap"
      when.contains:
        processor.event: "sourcemap"

    - index: "apm-%{[beat.version]}-error-%{+yyyy.MM.dd}"
      when.contains:
        processor.event: "error"

    - index: "apm-%{[beat.version]}-transaction-%{+yyyy.MM.dd}"
      when.contains:
        processor.event: "transaction"

    - index: "apm-%{[beat.version]}-span-%{+yyyy.MM.dd}"
      when.contains:
        processor.event: "span"

    - index: "apm-%{[beat.version]}-metric-%{+yyyy.MM.dd}"
      when.contains:
        processor.event: "metric"

    - index: "apm-%{[beat.version]}-onboarding-%{+yyyy.MM.dd}"
      when.contains:
        processor.event: "onboarding"

啟動

nohup ./apm-server -e  >&/dev/null &

下載

cd app/agent
wget https://repo1.maven.org/maven2/co/elastic/apm/elastic-apm-agent/1.4.0/elastic-apm-agent-1.4.0.jar

應(yīng)用埋點APM agent

APM agent 是使用與服務(wù)相同的語言編寫的開源庫,可以像安裝其他庫一樣將它們安裝到服務(wù)中虐秋,agent 將檢測服務(wù)的代碼并在運行時收集性能數(shù)據(jù)和錯誤榕茧,這些數(shù)據(jù)緩沖一小段時間并發(fā)送到 APM server。

#!/bin/bash
cs=`echo ../lib/*jar | sed 's/ /:/g'`
export JAVA_OPTS='-javaagent:/app/agent/elastic-apm-agent-1.4.0.jar  -Delastic.apm.service_name=USER-CENTER -Delastic.apm.server_url=http://192.168.235.129:8200 -Delastic.apm.secret_token= -Delastic.apm.application_packages=com.open.capacity  -XX:+UseG1GC   -Xmx400M -Xms400M   -XX:MaxMetaspaceSize=128M   -XX:MetaspaceSize=128M      -XX:MaxGCPauseMillis=100 -XX:InitiatingHeapOccupancyPercent=45    -XX:+ParallelRefProcEnabled  -XX:MaxTenuringThreshold=3   -XX:+AlwaysPreTouch  -XX:+UseStringDeduplication -XX:StringDeduplicationAgeThreshold=3 -XX:-OmitStackTraceInFastThrow -Djava.security.egd=file:/dev/./urandom -verbose:gc  -XX:+PrintGCDetails   -XX:+PrintGCDateStamps  -XX:+PrintGCApplicationStoppedTime  -XX:+PrintGCApplicationConcurrentTime  -XX:+PrintTenuringDistribution -XX:+PrintClassHistogramBeforeFullGC  -XX:+PrintClassHistogramAfterFullGC -Xloggc:/tmp/logs/gc_%p.log  -XX:+HeapDumpOnOutOfMemoryError  -XX:HeapDumpPath=/tmp/logs   -XX:ErrorFile=/tmp/logs/hs_error_pid%p.log -Djava.rmi.server.hostname=127.0.0.1 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=2199 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false '

nohup java -server  $JAVA_OPTS  -cp  .:$cs  com.open.capacity.UserCenterApp   &>/dev/null  &   echo $! >pid&

#java -server  $JAVA_OPTS  -cp  .:$cs  com.open.capacity.UserCenterApp     &   echo $! >pid&

監(jiān)控大盤

image

SQL語句

SQL語句界面

錯誤列表

錯誤列表界面

錯誤統(tǒng)計

錯誤統(tǒng)計界面

dashboard

dashboard界面

service

service界面

來源OCP開源項目教程文檔:https://www.kancloud.cn/owenwangwen/open-capacity-platform/1801099

文末

文章收錄至
Github: https://github.com/CoderMerlin/coder-programming
Gitee: https://gitee.com/573059382/coder-programming
歡迎關(guān)注并star~

微信公眾號
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者

  • 序言:七十年代末客给,一起剝皮案震驚了整個濱河市用押,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌靶剑,老刑警劉巖蜻拨,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異桩引,居然都是意外死亡缎讼,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門坑匠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來血崭,“玉大人,你說我怎么就攤上這事厘灼〖腥遥” “怎么了?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵手幢,是天一觀的道長捷凄。 經(jīng)常有香客問我,道長围来,這世上最難降的妖魔是什么跺涤? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任匈睁,我火速辦了婚禮,結(jié)果婚禮上桶错,老公的妹妹穿的比我還像新娘航唆。我一直安慰自己,他們只是感情好院刁,可當(dāng)我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布糯钙。 她就那樣靜靜地躺著,像睡著了一般退腥。 火紅的嫁衣襯著肌膚如雪任岸。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天狡刘,我揣著相機與錄音享潜,去河邊找鬼。 笑死嗅蔬,一個胖子當(dāng)著我的面吹牛剑按,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播澜术,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼艺蝴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了鸟废?” 一聲冷哼從身側(cè)響起猜敢,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎盒延,沒想到半個月后锣枝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡兰英,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了供鸠。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片畦贸。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖楞捂,靈堂內(nèi)的尸體忽然破棺而出薄坏,到底是詐尸還是另有隱情,我是刑警寧澤寨闹,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布胶坠,位于F島的核電站,受9級特大地震影響繁堡,放射性物質(zhì)發(fā)生泄漏沈善。R本人自食惡果不足惜乡数,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望闻牡。 院中可真熱鬧净赴,春花似錦、人聲如沸罩润。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽割以。三九已至金度,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間严沥,已是汗流浹背猜极。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留祝峻,地道東北人魔吐。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像莱找,于是被迫代替她去往敵國和親酬姆。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,901評論 2 345