SKywalking Agent配置+Oracle監控插件安裝指南

SKywalking Agent配置+Oracle監控插件安裝指南

前言:

SkyWalking + Elasticsearch8 容器化部署指南
Skywalking版本:V10.2.0
Skywalking Agent版本:V9.4.0

Skywalking Agent下載地址:Downloads | Apache SkyWalking
插件下載地址:Releases · SkyAPM/java-plugin-extensions
插件版本:apm-oracle-10.x-plugin-2.3.1.jar

一.Agent包準備

打開下載地址,在如下地方下載需要版本的Agent

image-20250909151601226

二.配置Java項目并連接Skywalking

1.非容器化啟動Java

agent包上傳至jar包目錄后解壓,如圖:

tar -zxvf apache-skywalking-java-agent-9.4.0.tgz

image-20250909181909540

修改Java的啟動命令:

#!/bin/bash
var=$(date +%Y%m%d%H%M)
dir_base=/opt/app/trpms-api
jar_name='trpms-0.0.1-SNAPSHOT.jar'
filename=/opt/app/trpms-api/trpms-0.0.1-SNAPSHOT.jar
if [ $(find $dir_base -name '*.*.bak*' | wc -l) -gt 6 ]; then#刪除以.bak2結尾的備份jar包find $dir_base -name '*.*.bak*' | xargs rm -rvfecho "delete bak.jar success!"
fi
#重命名備份jar包
cp $filename $filename.bak$var
echo "cp name success!"export JAVA_HOME=/opt/java/jdk-11.0.12
echo ${JAVA_HOME}
cd ${dir_base}
echo 'deploying...'if [ $(pgrep -f ${jar_name} | wc -l) -gt 0 ]; thenpkill -9 -f ${jar_name}
fi
echo ${dir_base}/${jar_name}
nohup ${JAVA_HOME}/bin/java -Xms512m -Xmx1024m -jar ${dir_base}/${jar_name} --spring.profiles.active=prd-scfai s>${dir_base}/out.log 2>&1 &
echo 'ok!'

以上原本的Java啟動腳本,綁定 Skywakling 需要在Java啟動參數中添加如下命令:

#!/bin/bash
var=$(date +%Y%m%d%H%M)
dir_base=/opt/app/trpms-api
jar_name='trpms-0.0.1-SNAPSHOT.jar'
filename=/opt/app/trpms-api/trpms-0.0.1-SNAPSHOT.jar# 添加SkyWalking agent路徑變量
skywalking_agent_path="/opt/app/trpms-api/skywalking-agent/skywalking-agent.jar"if [ $(find $dir_base -name '*.*.bak*' | wc -l) -gt 6 ]; thenfind $dir_base -name '*.*.bak*' | xargs rm -rvfecho "delete bak.jar success!"
ficp $filename $filename.bak$var
echo "cp name success!"export JAVA_HOME=/opt/java/jdk-11.0.12
echo ${JAVA_HOME}
cd ${dir_base}
echo 'deploying...'if [ $(pgrep -f ${jar_name} | wc -l) -gt 0 ]; thenpkill -9 -f ${jar_name}
fi# 檢查SkyWalking agent是否存在
if [ ! -f "$skywalking_agent_path" ]; thenecho "錯誤: 找不到SkyWalking agent: $skywalking_agent_path"echo "請確保SkyWalking agent已正確安裝在該路徑"exit 1
fiecho ${dir_base}/${jar_name}
echo "使用SkyWalking agent: $skywalking_agent_path"# 使用絕對路徑而不是相對路徑
nohup ${JAVA_HOME}/bin/java -Xms512m -Xmx1024m \-javaagent:"$skywalking_agent_path" \-Dskywalking.agent.service_name=trpms-api \-Dskywalking.collector.backend_service=<your ip>:11800 \-jar ${dir_base}/${jar_name} \--spring.profiles.active=prd-scfai \>${dir_base}/out.log 2>&1 &echo 'ok!'

命令解釋:
-javaagent:"$skywalking_agent_path":指定 SkyWalking Java Agent 的路徑
-Dskywalking.agent.service_name=trpms-api:設置當前應用在 SkyWalking 中的服務名稱
-Dskywalking.collector.backend_service=172.20.23.66:11800:指定 SkyWalking 收集器(OAP Server)的地址和端口

啟動成功后,就可以在Skywalking管理頁面看見該系統的監控信息。
image-20250909174233611

2.Docker容器化部署

以下是一個完整配置的Dockerfile打包文件:

# 配置了sky-walking的dockerfile
#此處任意Java鏡像即可
FROM <鏡像地址>/java:corretto11-font
MAINTAINER shanyoufusu
WORKDIR /usr/app
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
ARG APP_NAME="app"
ARG PROFILE
ENV JAVA_OPTS="-Xms512m -Xmx4096m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/app/log" \SPRING_PROFILES_ACTIVE=$PROFILE \APPLICATION_NAME=$APP_NAME \AGENT_ADDRESS="<your ip>:11800"
ADD target/${APPLICATION_NAME}.jar ${APPLICATION_NAME}.jar
# 將agent文件夾放入容器,jenkins配置里,docker build前一步,cp到target文件夾下的
ADD target/agent/ /usr/local/agent
EXPOSE ${EXPORT}
ENTRYPOINT exec java ${JAVA_OPTS} \-javaagent:/usr/local/agent/skywalking-agent.jar \-Dskywalking.agent.service_name=$APPLICATION_NAME \-Dskywalking.collector.backend_service=${AGENT_ADDRESS} \-jar ${APPLICATION_NAME}.jar

注意文件中:ADD target/agent/ /usr/local/agent這一步是通過Jenkinsfile提前對skywalking-agent包進行了預處理,skywalking-agent已被提前拷貝至Jenkins/var/jenkins_home/目錄并命名為agent

			dir("$buildDir") {//  復制Skywalking包sh 'cp -r /var/jenkins_home/agent target/'sh 'ls ./target'  echo "開始打包docker鏡像:$imageName"

請按照實際情況修改ADD target/agent/ /usr/local/agent命令

依照此Dockerfile打包文件,可把skywalking-agentcopy至容器內部,在容器運行時就可以把數據傳輸至Skywalking OAP

三.Oracle監控插件安裝

1.簡要說明

Skywalking默認是不帶Oracle數據庫監控的功能,所以需要安裝對應的插件去實現對Oracle數據庫的監控,以此去排查數據庫中存在的慢sql

image-20250909180400874

如上圖,5342Pgsql的默認端口1521Oracle的默認端口。進入后就可以分別看到數據庫的監控信息

image-20250909180744867

2.插件安裝和命令配置

進入下載頁面后,點擊下載我們需要的安裝包。

image-20250909181104350

下載后傳入之前解壓的skywalking-agent目錄,如下圖:

image-20250909181850691

image-20250909182008940

然后再運行Java應用的時候需要添加如下命令:

-Dskywalking.plugin.jdbc.trace_sql_parameters=true

如下:

# 配置了sky-walking的dockerfile
#此處任意Java鏡像即可
FROM <鏡像地址>/java:corretto11-font
MAINTAINER shanyoufusu
WORKDIR /usr/app
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
ARG APP_NAME="app"
ARG PROFILE
ENV JAVA_OPTS="-Xms512m -Xmx4096m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/app/log" \SPRING_PROFILES_ACTIVE=$PROFILE \APPLICATION_NAME=$APP_NAME \AGENT_ADDRESS="<your ip>:11800"
ADD target/${APPLICATION_NAME}.jar ${APPLICATION_NAME}.jar
# 將agent文件夾放入容器,jenkins配置里,docker build前一步,cp到target文件夾下的
ADD target/agent/ /usr/local/agent
EXPOSE ${EXPORT}
ENTRYPOINT exec java ${JAVA_OPTS} \-javaagent:/usr/local/agent/skywalking-agent.jar \-Dskywalking.agent.service_name=$APPLICATION_NAME \-Dskywalking.collector.backend_service=${AGENT_ADDRESS} \-Dskywalking.plugin.jdbc.trace_sql_parameters=true \-jar ${APPLICATION_NAME}.jar

啟動后就能再虛擬數據庫處,看到Oracle的數據庫信息已經被監測。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/98869.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/98869.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/98869.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ES相關問題匯總

問題一&#xff1a;關于【QueryBuilder對象】和【Query String語法】查詢時底層運行方式和結果的差異

5. STM32 時鐘系統分配

文章目錄下述將以stm32f407 為例1. 時鐘系統及頻率分析2. 時鐘配置下述將以stm32f407 為例 1. 時鐘系統及頻率分析 上述STM32F4時鐘系統圖解析入下&#xff1a; STM32F407 系列微控制器&#xff08;基于 Cortex-M4 內核&#xff0c;帶 FPU&#xff09;的工作頻率配置如下&…

《從 0 建立測試開發認知:先搞懂 “是什么”,再學 “怎么做”》

&#x1f525;個人主頁&#xff1a;草莓熊Lotso &#x1f3ac;作者簡介&#xff1a;C研發方向學習者 &#x1f4d6;個人專欄&#xff1a; 《C知識分享》《Linux 入門到實踐&#xff1a;零基礎也能懂》《數據結構與算法》《測試開發實戰指南》《算法題闖關指南》 ??人生格言&a…

net::ERR_EMPTY_RESPONSE

net::ERR_EMPTY_RESPONSE表現解決表現 Java后端封裝一個接口&#xff0c;透傳前端參數&#xff0c;請求到其他模塊服務 本地開發環境聯調時是沒有問題&#xff0c;測試環境上報錯 1.前端報錯&#xff0c;F12檢查&#xff0c;network上的請求&#xff0c;返回response選項中為空…

在線多功能環境音生成器

https://oltool.cc/toolbox/huanjingyins.html 關于環境音生成器介紹&#xff1a; 1、本工具可以混合各種聲音&#xff0c;比如下雨聲&#xff0c;打雷聲&#xff0c;海浪聲&#xff0c;鳥叫以及蟲鳴聲等&#xff0c;生成新的環境聲。 2、定時器&#xff1a;可以設置倒計時&…

本地電腦映射端口到外網訪問的開啟方法和注意事項,內網服務提供跨網使用簡單操作實現

在計算機網絡中&#xff0c;端口映射是一項重要的技術&#xff0c;它允許外網用戶訪問局域網內的特定設備或服務。當我們在本地電腦搭建部署項目應用后&#xff0c;就可以通過映射端口的方式&#xff0c;簡單快速穩定的提供互聯網訪問服務。以下將詳細介紹如何開啟電腦映射端口…

Java 大視界 -- Java 大數據在智能醫療健康檔案數據分析與個性化健康管理中的應用(410)

Java 大視界 -- Java 大數據在智能醫療健康檔案數據分析與個性化健康管理中的應用&#xff08;410&#xff09;引言&#xff1a;正文&#xff1a;一、2023 年 6 月智能醫療健康檔案的核心落地需求&#xff08;政策 業務雙驅動&#xff09;1.1 政策倒逼的數據應用痛點&#xff…

微服務架構的基石:Nacos全方位解析與Java實戰指南

引言在云原生與微服務浪潮席卷而來的今天&#xff0c;服務的治理與配置的管理變得前所未有的復雜。一個個單一的應用被拆分為數十甚至上百個微服務&#xff0c;如何讓這些服務輕松地發現彼此&#xff1f;如何在不重啟應用的情況下動態調整所有服務的參數&#xff1f;這些問題直…

IDA pro 生成idapro.hexlic

先安裝IDA pro&#xff0c;安裝好后&#xff0c;把根目錄中的 ida32.dll和ida.dll賦值到python文件腳本同目錄中&#xff0c;如圖。 直接運行py import json import hashlib import os from datetime import datetime, timedelta import platform import winregname input(&…

【ARMv7-M】復位向量與啟動過程

關于ARMv7上電復位后&#xff0c;通過復位向量初始化堆棧位置、PC指針&#xff0c;然后跳轉到匯編入口&#xff0c;開始執行系統初始化等等操作&#xff0c;熟悉了解這個過程&#xff0c;對于嵌入式系統軟件開發來說至關重要。不同的SOC在BootROM與Flash的地址分配上&#xff0…

【開發者導航】開源免費的金融數據量化與分析項目!

Hello大家好&#xff01;我是助你打破信息差的開發者導航。今天給大家分享的開源項目是OpenBB&#xff0c;一個面向量化與分析的開源金融數據平臺&#xff01; 金融分析和量化研究需要可靠的數據來源與靈活的分析工具。OpenBB 正是為金融分析師、量化研究員以及 AI 代理開發者…

如何使用 OCR 提取掃描件 PDF 的文本(Python 實現)

從 PDF 中提取文本一直是很多人的需求。市面上的工具雖然能處理大部分數字 PDF&#xff0c;但遇到掃描件 PDF 時往往無能為力&#xff0c;想要直接復制或獲取其中的文字并不容易。其實這個問題并不是沒有解法 —— 本文將帶你了解如何借助 Python OCR 技術&#xff0c;從掃描 …

Deepin/UOS系統中開啟和配置SSH服務

文章目錄一、安裝SSH服務二、啟動并設置開機自啟三、配置SSH服務&#xff08;可選&#xff09;四、配置防火墻&#xff08;若開啟&#xff09;五、測試SSH連接注意事項在Deepin系統中開啟和配置SSH服務可以按照以下步驟進行&#xff1a; 一、安裝SSH服務 Deepin基于Debian&am…

敏捷適合短期項目還是長期項目

在項目管理領域&#xff0c;敏捷方法因其靈活性和快速響應特性而廣受歡迎。敏捷既適合短期項目&#xff0c;也能應用于長期項目&#xff0c;但兩者的實施重點不同&#xff1a;短期項目側重于快速交付和驗證價值&#xff0c;長期項目則依靠迭代和持續改進確保復雜目標逐步實現。…

springboot+python+uniapp基于微信小程序的旅游服務系統景點信息展示 路線推薦 在線預約 評論互動系統

目錄技術棧介紹具體實現截圖系統設計研究方法&#xff1a;設計步驟設計流程核心代碼部分展示研究方法詳細視頻演示試驗方案論文大綱源碼獲取/詳細視頻演示技術棧介紹 Django-SpringBoot-php-Node.js-flask 本課題的研究方法和研究步驟基本合理&#xff0c;難度適中&#xff0…

保證消息的可靠性

圖示以RabbitMQ為例&#xff0c;RabbitMQ server 包含多個vhost&#xff0c;而vhost主要是分為 exchanges 和 queues。 消息的可靠性分為以下幾步&#xff1a; 生產者投遞的可靠性&#xff1b; a. 消息投遞到exchange時&#xff0c;成功和失敗都會從回調接口中返回。 b. 消息從…

illustrator-06-貓頭鷹

導入素材&#xff1a;【文件-置入】若&#xff1a;【文件-打開】的方式填色&#xff0c;描邊功能會失效ctrl2鎖定為背景畫圓和三角形選擇三角形-雙擊鏡像工具-垂直-復制全選-窗口-路徑查找器-聯集兩個正圓聯集

家庭飲用水消費新趨勢:預付返還模式下的用戶增長與隱憂

大家好&#xff0c;我是銀子&#xff0c;一直將目光聚焦于傳統行業轉型發展的軟件開發。今天咱們來聊聊近期在市場上熱度頗高的青藍送水商業模式。它以“免費送水”為核心策略&#xff0c;宣稱能讓用戶“喝水不花錢”&#xff0c;推廣者“分享可獲利”。這聽起來很美好&#xf…

前沿探索:RISC-V 架構 MCU 在航天級輻射環境下的可靠性測試

摘要隨著商業航天和高可靠應用需求的蓬勃發展&#xff0c;空間輻射環境對電子設備的可靠性和穩定性構成嚴峻挑戰&#xff0c;單粒子效應和總劑量效應是半導體器件在太空環境中面臨的主要輻射威脅&#xff0c;半導體器件的抗輻射能力成為決定其在嚴苛太空環境下可靠運行的關鍵因…

漫談《數字圖像處理》之邊緣檢測與邊界預處理的辨析

在數字圖像處理中&#xff0c;邊緣檢測與邊界預處理常因均圍繞 “圖像邊緣” 展開而被混淆。事實上&#xff0c;二者分屬不同技術范疇 ——邊緣檢測是圖像分割的核心環節&#xff0c;邊界預處理是特征提取的前置步驟&#xff0c;雖處理對象存在關聯&#xff0c;但目標定位、技術…