转载

开源ESB-Talent产品SAM监控配置说明

本文做为对开源Talend-ESB的SAM监控配置的一个说明,重点是对于监控日志信息能够入数据库的事件日志中,对于企业版的Talend本身提供了专门的管控平台,而对于社区版无Administrator管控,但是对于监控的日志数据仍然可以采集到数据库中。

整个SAM的架构设计参考Talend提供的技术文档,如下图所示:

开源ESB-Talent产品SAM监控配置说明

其中核心内容可以看到首先是你设计的服务需要配置为支持SAM进行事件采集,对于产生的日志事件首先进行收集进入MQ,其次是SAM Server启动后会提供MonitoringService服务,通过该Web服务来实现事件最终持久化到数据库中。

这篇主要说明如何将事件日志信息采集并存储到Mysql数据库中。

第一步:数据库的初始化

首先我们需要在Mysql中新建立一个数据库,比如命名为TalendESB,在/Runtime_ESBSE/add-ons/sam/db目录下找到两个Mysql相关的.sql脚本,一个是创建表的,一个是创建索引的,在新建的TalendESB数据库中运行着两个.sql文件,即完成了数据库本身的初始化操作。

第二步:配置文件修改

由于Talend SAM默认配置的数据库监控是在Debry开源数据库里面,因此如果监控日志需要采集到Mysql数据库需要对一些配置文件进行修改。具体如下:

1. 修改/Runtime_ESBSE/container/etc目录下的org.talend.esb.sam.server文件,将原来Debry数据库配置的两行代码替换为Mysql的数据库配置,具体为:

db.datasource=ds-mysql

db.dialect=mysqlDialect

2. 修改/Runtime_ESBSE/container/system/org/talend/esb/ds-service-mysql/6.1.1目录下的ds-service-mysql-6.1.1-org.talend.esb.datasource.mysql.cfg文件,配置为你服务器mysql信息,例如

datasource.url=jdbc:mysql://localhost:3306/talendesb

datasource.username=root

datasource.password=root

datasource.pool.maxActive=20

datasource.pool.maxIdle=5

datasource.pool.maxWait=30000

在修改完成后需要将文件拷贝到/Runtime_ESBSE/container/etc目录下,并将该文件重命名为org.talend.esb.datasource.mysql.cfg,该步骤很重要否则SAM无法找到新数据库配置信息

第三步:相关扩展包的安装

在Talend服务端启动后,对于Mysql相关的Feature包默认是没有安装的,因此SAM监控信息要入Mysql数据库,还需要Mysql特征包的支持,因此需要在Talend Server启动后运行如下命名安装Mysql包

>>feature:install pax-jdbc-mysql

>>feature:install tesb-datasource-mysql

第四步:启动SAM Server

在启动SAM Server前首先可以运行如下命令,查看下SAM相关的特征包是否都已经安装,如果没有安装,则首先需要运行feature:install安装相应的包,具体命令为

>>feature:list | grep sam

其中涉及到的SAM-Server,SAM-Agent等包都必须要正常安装,在安装完成后启动SAM

>>tesb:start-sam

第五步:安装验证和访问

在SAM启动后访问http://localhost:8040/services/MonitoringServiceSOAP?wsdl,正常的话说明安装完成

在设置完成SAM监控后,对于ESB设计的服务注意要在Serice的ESB Runtime设置中,勾选

[]Use Service Activity Monitor

[]Use Service Locator

[]Use Log Message

这三个选择项目都选择后,将Service发布为Kar包部署到Deploy目录即可完成对服务的日志监控。

在通过SoapUI运行和测试后可以看到,在数据库的Event表中已经有相应的服务调用日志记录。

原文  http://blog.sina.com.cn/s/blog_493a84550102w4rg.html
正文到此结束
Loading...