歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> 監控系統cat安裝和配置demo ubuntu 14.04

監控系統cat安裝和配置demo ubuntu 14.04

日期:2017/3/1 11:48:19   编辑:關於Linux

(1) 配置jdk安裝環境

需要jdk1.7_79以下的jdk版本,以上的不兼容。我以前本地的是jdk1.7_80 ,編譯好後,放到tomcat下不行。

jdk環境安裝的過程如下:
1:獲得jdk1.7.67

>wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.tar.gz

解壓

>tar -xvf jdk-7u67-linux-x64.tar.gz

2:配置環境變量

>vi /etc/profile

在最後一行添加你的jdk的安裝目錄

export JAVA_HOME=/home/k12ct/jdk1.7.0_67
export PATH=$JAVA_HOME/bin:$PATH

保存退出,並使載入最新配置

source /etc/profile

查看jdk版本

>java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

(2):安裝maven

2.1:下載maven包

wget http://apache.fayea.com/apache-mirror/maven/maven-3/3.2.3/binaries/apache-maven-3.2.3-bin.tar.gz

2:解壓

>tar -xvf  apache-maven-3.2.3-bin.tar.gzba

3:配置環境變量

>vi /etc/profile
在最後一行添加你的maven的安裝目錄
export M2_HOME="/home/k12ct/apache-maven-3.2.5"
export M2="$M2_HOME/bin"
export PATH="$M2:$PATH"

保存退出,並使載入最新配置

>source /etc/profile

4:查看maven版本號

>mvn -v
Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-15T01:29:23+08:00)
Maven home: /home/k12ct/apache-maven-3.2.5
Java version: 1.7.0_67, vendor: Oracle Corporation
Java home: /home/k12ct/jdk1.7.0_67/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.19.0-25-generic", arch: "amd64", family: "unix"

(3)安裝git

1:安裝

>sudo apt-get install git

2:查看git版本

>git --version
git version 1.9.1

(4)安裝mysql

tips: 如果有mysql的可以跳過這一步

請參考我的另外一篇文章 ubuntu 14.04 安裝 mysql 5.6 :http://blog.csdn.net/chenpy/article/details/50344085

在此就不多說了。
當然如果想圖方便,可以在本機先安裝個mysql的服務端

>sudo apt-get install mysql-server

輸入mysql的root的密碼
root

如果你是centos
安裝命令如下

>yum -y install mysql-server
>/etc/rc.d/init.d/mysqld restart
>/usr/bin/mysqladmin -u root password ‘root'
>cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

刪除所有的內容,添加如下內容
http://blog.csdn.net/chenpy/article/details/51556673

(5)下載最新的cat源碼,並編譯,發布

>mkdir git
>cd git
>git clone https://github.com/dianping/cat.git

等待下載完畢

cat依賴的jar包有些事牆外的,因此需要把cat依賴的jar包安裝到本地倉庫
下載分支:mvn-repo
這裡寫圖片描述
<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:sql;"> >wget https://codeload.github.com/dianping/cat/zip/mvn-repo

其實下載的是一個壓縮包

>mv mvn-repo mvn-repo.zip
解壓
>unzip ./mvn-repo.zip

>cd cat-mvn-repo/
把裡面的文件復制到本地倉庫
cp  -r ./com/ ~/.m2/repository/
cp  -r ./org/ ~/.m2/repository/
如發現沒有maven的目錄,請創建之。
如果發現本地倉庫有這些文件夾,請強制覆蓋
利用管道符:
>yes | cp -fr ./org/ ~/.m2/repository/

復制完畢後就可以編譯cat了

>mvn clean install -DskipTests

完畢後請安裝:cat

>mvn cat:install

如果發現安裝出錯,可能是沒有/data 目錄的權限。

請修改data目錄的權限

>cd /data/
>chmod -R 777 ./appdatas/
>chmod -R 777 ./applogs/

重新安裝

>mvn cat:install

安裝需要輸入mysql的配置
按照提示輸入:
1:jdbc:xxx:ip:3306
root
root
就可以

(6)配置cat

下載tomcat7

>wget http://mirrors.cnnic.cn/apache/tomcat/tomcat-7/v7.0.69/bin/apache-tomcat-7.0.69.tar.gz
>tar -xvf apache-tomcat-7.0.69.tar.gz

把在cat-home/target/裡面打包好的cat-alpha-1.3.6.war 放到tomcat 的webapp中,並改名為cat.war
進入 /data/appdatas/cat/ 目錄

<1>檢查並修改client.xml

如果該目錄下沒有, 則拷貝 cat/script 目錄下的client.xml 到該目錄下

這裡寫圖片描述

Mode默認為client不需要修改
servers標簽 裡面的 server 標簽 裡面的ip需要修改為你服務端的ip,端口也是要修改為服務端的端口,默認是2280,http-port 是tomcat端口,
如果是默認的tomcat則是8080

<2>檢查並修改 datasources.xml

如果能正確的執行 mvn cat:install 命令,則這裡的數據源的配置都是正確的,不需要修改
如下是正確的配置截圖
這裡寫圖片描述

配置完畢後,查看是否在數據庫中已經建立了cat的數據庫,如果沒有建立,請執行 script 文件夾裡面的cat.sql手動建庫

<3> 配置server.xml

這裡寫圖片描述
Local-mode :為本地模式,設置為false,否則將不會使用數據庫和hdfs存儲
Hdfs-machine: 是否啟用hdfs存儲,設為false
Job-machine:當前服務為報告工作機,當有多台服務器時,開啟一台即可
Alert-machine :定義為報警機,同樣開啟一台即可,如沒有一台開啟,告警功能將不能夠正常使用。
Storage :定義數據存儲相關信息,這裡定義了本地目錄/data/appdatas/cat/buket/為存儲目錄,本地報告及本地日志保存時間均為7天。
Console:控制台信息,定義默認的domain為Cat(每個cat應用要求都需要有一個domain,Cat本身的domain為Cat),並顯示cat的domain
Remote-servers:定義http服務列表,我這裡就一台機器 192.168.1.203

(7):啟動cat服務,並配置客戶端路由

進入tomcat的bin目錄,啟動tomcat
進入http://192.168.1.203:8080/cat
如果發現如下界面,說明啟動成功
這裡寫圖片描述

點擊紅色的 “配置”按鈕
輸入:catadmin catadmin

進入 全局告警配置 -》 客戶端路由
這裡寫圖片描述
到此為止,服務端已經配置完畢。

(8) 客戶端配置

也就是本機要做demo的配置
新建demo的maven工程
主要的配置如下:

8.1:配置基礎的pom.xml文件

主要的依賴

<dependency>
            <groupId>com.dianping.cat</groupId>
            <artifactId>cat-core</artifactId>
            <version>1.3.6</version>
        </dependency>

        <!-- spring mvc -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>4.0.9.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>4.0.9.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>4.0.9.RELEASE</version>
        </dependency>

        <!-- jsp -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.0.1</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <!-- jsp -->

如果添加cat core依賴發現沒有加載到jar包,
說明你本地倉庫裡面沒有cat的包。
需要安裝cat到本地倉庫
具體方法和安裝服務端一樣

>git clone https://github.com/dianping/cat.git

下載分支:mvn-repo, 安裝cat依賴到本地倉庫
這裡寫圖片描述

執行maven命令安裝

mvn clean install -DskipTests

8.2:配置spring-mvc

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">

<!-- scan the package and the sub package -->
<context:component-scan base-package="com.k12ct.demo" />

<!-- don't handle the static resource -->
<mvc:default-servlet-handler />

<!-- if you use annotation you must configure following setting -->
<mvc:annotation-driven />

<!-- configure the InternalResourceViewResolver -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver"

id="internalResourceViewResolver">

<!-- 前綴 -->

<property name="prefix" value="/WEB-INF/jsp/" />

<!-- 後綴 -->

<property name="suffix" value=".jsp" />

</bean>

<!-- 配置攔截器 -->
<mvc:interceptors>
<mvc:interceptor>

<mvc:mapping path="/**" />


<bean class="com.k12ct.demo.CatInterceptor"></bean>


</mvc:interceptor>

</mvc:interceptors>

</beans>

8.3 配置web.xml

<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<display-name>class-service</display-name>

<servlet>
<servlet-name>springmvc</servlet-name>

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

<init-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:spring-mvc.xml</param-value>

</init-param>

<!-- <load-on-startup>1</load-on-startup> -->

</servlet>

<servlet-mapping>
<servlet-name>springmvc</servlet-name>

<url-pattern>/</url-pattern>

</servlet-mapping>

</web-app>

8.4 配置cat相關

在src/main/resources 包下
新建 META-INF 文件夾
在此文件夾中新建 app.properties文件 ,裡面內容如下 :
app.name=demo

在META-INF文件夾中,新建cat文件夾,
然後在cat文件夾中,新建client.xml ,裡面內容如下:



8.5 配置編寫springmvc的攔截器。

public class CatInterceptor implements HandlerInterceptor {

private ThreadLocal tranLocal = new ThreadLocal();
private ThreadLocal pageLocal = new ThreadLocal();

@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {


String uri = request.getRequestURI();

Transaction t = Cat.newTransaction("URL", uri);

Cat.logEvent("URL.Method", request.getMethod(), Message.SUCCESS, request.getRequestURL().toString());

Cat.logEvent("URL.Host", request.getMethod(), Message.SUCCESS, request.getRemoteHost());

tranLocal.set(t);

return true;

}

@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {



String viewName = modelAndView != null ? modelAndView.getViewName() : "無";

Transaction t = Cat.newTransaction("View", viewName);

pageLocal.set(t);

}

@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
throws Exception {


// 請求-頁面渲染前

Transaction pt = pageLocal.get();

pt.setStatus(Transaction.SUCCESS);

pt.complete();


// 總計

Transaction t = tranLocal.get();

t.setStatus(Transaction.SUCCESS);

t.complete();


}

}

8.6 配置cat的client

進入cd /data/appdatas/cat/ 目錄,我本機是mac系統,就直接進入的這個目錄,如果你是windows系統,
請進入和eclipse同級的同目錄下。例如,你的eclipse是d盤,則在d盤的 /data/appdatas/cat/

編寫client.xml
這裡寫圖片描述
然後啟動項目,隨便訪問一下鏈接,

進入cat的服務端,你就會看到,你的demo項目的東西
這裡寫圖片描述
tips:要點擊搜索欄旁邊的全部和常用,要不,你發現不了你自定義的domain,我當時就是沒有點擊這個,查問題查了一上午。其實已經
成功了,就是沒有點擊這個按鈕。
這裡寫圖片描述

Copyright © Linux教程網 All Rights Reserved