# Syslog
简述
syslog DIP插件适用于Syslog协议的数据集成场景,是一款开箱即用的DIP插件。
# 告警DIP实例配置
- 在类型配置处选择
事件
# DIP实例配置
- 名称: DIP实例名称
# IN配置
- 主机: 服务端IP
- 端口: 服务端端口
- 协议: 与第三方厂商syslog确认进行syslog数据传输协议,可选
UDP
或TCP
- 分隔符: 与第三方厂商syslog确认syslog数据中各字段间的分隔符
- 告警源: 事件来源标识,标识该事件来自哪个监控系统
# 数据映射
字段映射
- 字段映射的目的:将syslog系统中的告警转变为tarsier系统中的告警。
从
列代表syslog
的数据通过分隔符后各个字段值的下标位置,也可以是常量;到
列代表映射的tarsier中的数据属性名称;映射
列代表tarsier中的数据属性需要进行的匹配规则,可以为空。 SourceCIName
:cicodeSourceAlertKey
:指标名称Summary
:告警信息LastOccurrence
:最后发生告警时间Status
:告警状态SourceIdentifier
:告警的唯一标识SourceEventID
:告警事件主键Severity
:告警级别SourceSeverity
:告警原始级别
从 到 映射 ${0} SourceCIName 不填/分类名.属性名/rulecode=索引名 ${1} SourceAlertKey ${2} Summary ${3} LastOccurrence ${4} Status ${5} SourceIdentifier ${6} SourceEventID ${7} Severity ${8} SourceSeverity - 字段映射的目的:将syslog系统中的告警转变为tarsier系统中的告警。
备注
- Severity此处也由${7}映射,会通过后面的告警级别映射改变。
- SourceCIName:
CMV
中用于确定发生告警的CI的ciCode,其所在行映射
列的填写方式有四种:- ${0}在对方系统中具有唯一性,且${0}是CI分类中的主键(CI分类中不一定也叫0),此时在
SourceCIName
这一行的映射
处不填任何内容,默认按照cicode查找。 - ${0}在对方系统中具有唯一性,但${0}不是CI分类中的主键,此时
映射
一栏填写分类名.属性名(CMV中的分类名和属性名,该属性必须能够唯一标识CI
,该属性在CMV中不一定叫0)。如X86宿主机.主机名
,即按照搜索分类的指定属性查找。 - 对方系统的告警中没有属性来标识发生告警的设备,则可以用两个或多个属性来匹配到唯一的设备(这两个或多个属性在CI分类中必须存在),此时需要在NOAH中使用这两个或多个属性建立规则索引。规则表达式的书写格式:$(属性1)_$(属性2),下划线可以用其他符号代替。在
映射CI字段
列填写rulecode=索引名称,此时按照按照在NOAH中建立的规则索引查找。 - 4)多分类多属性匹配。如:CIPropertys=[{"className":"ghws,ghw1","CIAttribute":[{"name":"id","opType": "1","value": "${2}"}]}],
其中
CIPropertys=
为标识(必填);CIPropertys=
为匹配规则(JSON格式)。className
:CMV中CI的分类名称,可以填多个。多个分类名称之间使用英文逗号分隔",",填入具体的分类会按照填写的分类进行匹配,不填则在全部分类中进行匹配。CIAttribute
:匹配的CI属性是一个数组格式。如果多属性匹配可配置多个属性的规则。name
为属性名称;opType
匹配的方式;1
为精确匹配;2
为模糊匹配;value
为属性值${}是源数据中的值。- 不同分类或全部分类下的相同属性匹配。如:
CIPropertys=[{"className":"","CIAttribute":[{"name":"id","opType": "1","value": "${2}"}]}]
- 不同分类下的不同属性.如:
CIPropertys=[{"className":"服务器","CIAttribute":[{"name":"配置项编码","opType": "1","value": "${2}"}]},{"className":"交换机","CIAttribute":[{"name":"IP地址","opType": "1","value": "${2}"}]}]
- ${0}在对方系统中具有唯一性,且${0}是CI分类中的主键(CI分类中不一定也叫0),此时在
# 级别映射
从
列代表第三方厂商的告警级别等级(6一般是最高级别的告警),到
列代表tarsier中的告警级别(1是最高级别告警),两者的对应关系要按照级别的严重性一一映射填写.示例如下图所示:
从 | 到 |
---|---|
6 | 1 |
5 | 2 |
4 | 3 |
3 | 4 |
2 | 5 |
1 | 6 |
- 告警源: 事件来源标识,标识该事件来之哪个监控系统。此处指在tarsier系统中定义的告警源。
# Out配置
告警的发送方式选择:点击添加,选择对应的发送方式将数据进行发送
MYSQL
选择此项会将数据保存至mysql库,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | 数据库地址 | jdbc:mysql://0.0.0.0:3306/db_vmdb?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8 |
用户名(必填项) | 数据库用户名 | username |
密码(必填项) | 数据库密码 | password |
是否保存历史数据(必填项) | 默认为是,保存历史数据 | 是 |
ES
选择此项会将数据保存至ES库,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
ES请求地址(必填项) | 数据库地址 | 0.0.0.0:9200 |
用户名 | 数据库用户名 | username |
密码 | 数据库密码 | password |
ES性能数据保留天数(必填项) | 默认为7,保存7天内的性能数据 | 7 |
ACTIVEMQ
选择此项会将数据发送至ActiveMQ,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | ActiveMQ地址 | failover://(tcp://0.0.0.0:61616,tcp://0.0.0.0:61616)?randomize=false&timeout=5000&maxReconnectAttempts=-1 |
队列名(必填项) | ActiveMQ队列名称 | queue |
用户名 | ActiveMQ用户名 | username |
密码 | ActiveMQ密码 | password |
RABBITMQ
选择此项会将数据发送至RabbitMQ,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | RabbitMQ地址 | 0.0.0.0 |
端口(必填项) | RabbitMQ端口号 | 12000 |
用户名 | RabbitMQ用户名 | username |
密码 | RabbitMQ密码 | password |
RabbitMq工作模式(必填项) | 共有:简单模式,订阅模式,路由模式和Topic四种模式;默认为简单模式 | 简单模式 |
RabbitMq交换机或队列名称以及路由键(必填项) | 根据工作模式填写json数据 | 如下表所示 |
交换机或队列是否持久化(必填项) | 默认为否,不支持持久化 | 否 |
无服务时是否自动删除队列或者交换机(必填项) | 默认为否,不会自动删除队列或交换机 | 否 |
RabbitMq工作模式 | 对应json |
---|---|
简单模式 | {"name":"交换机名称"} |
订阅模式 | {"name":"交换机名称"} |
路由模式 | {"name":"交换机名称","routingKey":"路由键"} |
Topic模式 | {"name":"交换机名称","routingKey":"路由键"} |
注:此处的交换机名称和路由键按照实际情况填写
ROCKETMQ
选择此项会将数据发送至RocketMQ,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
请求地址(必填项) | RocketMQ地址 | 0.0.0.0:9876;0.0.0.0:9876 |
生产者组别 | RocketMQ生产者组别 | producerGroup |
消息发送主题 | 消息发送主题 | topicA |
消息标签 | 消息标签 | tagA |
超时时间 | 消息发送超时时间,单位为毫秒 | 30000 |
字符集 | 字符编码集,默认UTF-8 | UTF-8 |
消息发送类型 | 分为:异步发送,单向发送,同步发送共三种;默认为异步发送 | 异步发送 |
KAFKA
选择此项会将数据发送至kafka,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
请求地址(必填项) | kafka地址 | 0.0.0.0:9092;0.0.0.0:9092 |
消息发送主题(必填项) | 消息发送主题 | topicA |
sasl静态认证文件地址(非必填) | sasl conf认证文件位置 | /uinnova/dix/kafka_sasl_jaas.conf |
用户名(非必填) | Kafka动态认证用户名 | username |
密码(非必填) | Kafka动态认证密码 | password |
密码加密算法(非必填) | 对密码进行加密的算法,下拉框中二选一 | SCRAM-SHA-256 或 SCRAM-SHA-512 |
延迟(非必填) | 消息发送延迟,单位为秒 | 1 |
MQTT
选择此项会将数据发送至mqtt,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | mqtt地址 | tcp://127.0.0.0:1883 |
MQTT客户端ID(必填项) | mqtt客户端ID | clientID101 |
用户名 | mqtt用户名 | username |
密码 | mqtt密码 | password |
消息发送主题 | 消息发送主题 | topicA |
消息发送质量 | 分为:仅分发一次,至少分发一次,最多分发一次共三种;默认仅分发一次 | 仅分发一次 |
字符集 | 字符编码集,默认UTF-8 | UTF-8 |
HTTPPOST
选择此项会将数据通过post请求发送至http服务,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
http服务路径(必填项) | http服务地址 | http://0.0.0.0:0000 |
请求头 | 填写json格式的参数 | {"key":"value"} |
字符集 | 字符编码集,默认utf-8 | utf-8 |
HTTPSPOST
选择此项会将数据通过post请求发送至https服务,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
http服务路径(必填项) | https服务地址 | https://0.0.0.0:0000 |
请求头 | 填写json格式的参数 | {"key":"value"} |
字符集 | 字符编码集,默认utf-8 | utf-8 |
DIP实例的保存与启动
- 配置信息填写完成后,点击保存,成功保存后会在森数据DIX的数据集成页面看到新建的DIP实例
- 点击开始/启动按钮。
名词解释
已接入:当前数据接口接入到的总数据量
处理中:当前数据接口正在进行处理的数据量
发送中:当前数据接口正在向外部发送的数据量
已发送:当前数据接口发送到外部的总数据量- 待启动成功之后,点击日志按钮,查看数据是否能正常接入
# 性能DIP实例配置
- 在类型配置处选择
性能
# DIP实例配置
- 名称: DIP实例名称
# IN配置
- 主机IP: 服务端IP
- 端口: 服务端端口
- 协议: 与第三方厂商syslog确认进行syslog数据传输协议,可选
UDP
或TCP
- 分隔符: 与第三方厂商syslog确认syslog数据中各字段间的分隔符
# 数据映射
字段映射:
字段映射的目的:将syslog系统中的性能转变为tarsier系统中的性能,
从
列代表syslog
的数据通过分隔符后各个字段值的下标位置。到
列代表syslog
的数据通过分隔符后各个字段名称。映射
列代表tarsier中的数据属性需要进行的匹配规则,可以为空。从 到 映射 ${0} ciCode 不填/分类名.属性名/rulecode=索引名 ${1} metric ${2} value ${3} timestamp ${4} instance
备注
- timestamp此处也由${3}映射,并且可进行时间格式转换。如
dateformat(${3},yyyy-MM-dd HH:mm:ss)
,其中时间格式为${3}的时间格式 - ${0}:
CMV
中用于确定性能所在CI的ciCode,其所在行映射
列有四种填写方式:- ${0}在对方系统中具有唯一性,且${0}是CI分类中的主键。此时在
SourceCIName
这一行的映射
列不填任何内容,会默认按照cicode查找。 - ${0}在对方系统中具有唯一性,但${0}不是CI分类中的主键。此时
映射
列填写分类名.属性名(CMV中的分类及属性名,该属性必须能够唯一标识CI
)。如X86宿主机.主机名
,即按照搜索分类的指定属性查找。 - 对方系统的性能中没有属性来标识发生性能的设备,则可以用两个或多个属性来匹配到唯一的设备(这两个或多个属性在CI分类中必须存在)。此时需要在NOAH中使用这两个或多个属性建立规则索引。规则表达式的书写格式:$(属性1)_$(属性2),下划线可以用其他符号代替。在
映射
列填写rulecode=索引名称。此时按照按照在NOAH中建立的规则索引查找。 - 多分类多属性匹配。如:CIPropertys=[{"className":"ghws,ghw1","CIAttribute":[{"name":"id","opType": "1","value": "${2}"}]}],其中
CIPropertys=
为标识(必填);CIPropertys=
为匹配则(JSON格式)。
- ${0}在对方系统中具有唯一性,且${0}是CI分类中的主键。此时在
className
:CMV中CI的分类名称。可以填多个,多个分类名称之间使用英文逗号分隔",",填入具体的分类会按照填写的分类进行匹配,不填则在全部分类中进行匹配。CIAttribute
:匹配的CI属性是一个数组格式。如果多属性匹配可配置多个属性的规则,name
:属性名称;opType
:匹配的方式1
:精确匹配;2
:模糊匹配;value
:属性值,${}是源数据中的值。- 不同分类或全部分类下的相同属性匹配。如:
CIPropertys=[{"className":"","CIAttribute":[{"name":"id","opType": "1","value": "${2}"}]}]
- 不同分类下的不同属性。如:
CIPropertys=[{"className":"服务器","CIAttribute":[{"name":"配置项编码","opType": "1","value": "${2}"}]},{"className":"交换机","CIAttribute":[{"name":"IP地址","opType": "1","value": "${2}"}]}]
# Out配置
性能的发送方式选择:点击添加,选择对应的发送方式将数据进行发送
MYSQL
选择此项会将数据保存至mysql库,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | 数据库地址 | jdbc:mysql://0.0.0.0:3306/db_vmdb?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8 |
用户名(必填项) | 数据库用户名 | username |
密码(必填项) | 数据库密码 | password |
是否保存历史数据(必填项) | 默认为是,保存历史数据 | 是 |
ES
选择此项会将数据保存至ES库,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
ES请求地址(必填项) | 数据库地址 | 0.0.0.0:9200 |
用户名 | 数据库用户名 | username |
密码 | 数据库密码 | password |
ES性能数据保留天数(必填项) | 默认为7,保存7天内的性能数据 | 7 |
数据域 | ThingJS-X数据域ID (可选) |
ACTIVEMQ
选择此项会将数据发送至ActiveMQ,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | ActiveMQ地址 | failover://(tcp://0.0.0.0:61616,tcp://0.0.0.0:61616)?randomize=false&timeout=5000&maxReconnectAttempts=-1 |
队列名(必填项) | ActiveMQ队列名称 | queue |
用户名 | ActiveMQ用户名 | username |
密码 | ActiveMQ密码 | password |
RABBITMQ
选择此项会将数据发送至RabbitMQ,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | RabbitMQ地址 | 0.0.0.0 |
端口(必填项) | RabbitMQ端口号 | 12000 |
用户名 | RabbitMQ用户名 | username |
密码 | RabbitMQ密码 | password |
RabbitMq工作模式(必填项) | 共有:简单模式,订阅模式,路由模式和Topic四种模式;默认为简单模式 | 简单模式 |
RabbitMq交换机或队列名称以及路由键(必填项) | 根据工作模式填写json数据 | 如下表所示 |
交换机或队列是否持久化(必填项) | 默认为否,不支持持久化 | 否 |
无服务时是否自动删除队列或者交换机(必填项) | 默认为否,不会自动删除队列或交换机 | 否 |
RabbitMq工作模式 | 对应json |
---|---|
简单模式 | {"name":"交换机名称"} |
订阅模式 | {"name":"交换机名称"} |
路由模式 | {"name":"交换机名称","routingKey":"路由键"} |
Topic模式 | {"name":"交换机名称","routingKey":"路由键"} |
注:此处的交换机名称和路由键按照实际情况填写
ROCKETMQ
选择此项会将数据发送至RocketMQ,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
请求地址(必填项) | RocketMQ地址 | 0.0.0.0:9876;0.0.0.0:9876 |
生产者组别 | RocketMQ生产者组别 | producerGroup |
消息发送主题 | 消息发送主题 | topicA |
消息标签 | 消息标签 | tagA |
超时时间 | 消息发送超时时间,单位为毫秒 | 30000 |
字符集 | 字符编码集,默认UTF-8 | UTF-8 |
消息发送类型 | 分为:异步发送,单向发送,同步发送共三种;默认为异步发送 | 异步发送 |
KAFKA
选择此项会将数据发送至kafka,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
请求地址(必填项) | kafka地址 | 0.0.0.0:9092;0.0.0.0:9092 |
消息发送主题(必填项) | 消息发送主题 | topicA |
sasl静态认证文件地址(非必填) | sasl conf认证文件位置 | /uinnova/dix/kafka_sasl_jaas.conf |
用户名(非必填) | Kafka动态认证用户名 | username |
密码(非必填) | Kafka动态认证密码 | password |
密码加密算法(非必填) | 对密码进行加密的算法,下拉框中二选一 | SCRAM-SHA-256 或 SCRAM-SHA-512 |
延迟(非必填) | 消息发送延迟,单位为秒 | 1 |
MQTT
选择此项会将数据发送至mqtt,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
URL(必填项) | mqtt地址 | tcp://127.0.0.0:1883 |
MQTT客户端ID(必填项) | mqtt客户端ID | clientID101 |
用户名 | mqtt用户名 | username |
密码 | mqtt密码 | password |
消息发送主题 | 消息发送主题 | topicA |
消息发送质量 | 分为:仅分发一次,至少分发一次,最多分发一次共三种;默认仅分发一次 | 仅分发一次 |
字符集 | 字符编码集,默认UTF-8 | UTF-8 |
HTTPPOST
选择此项会将数据通过post请求发送至http服务,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
http服务路径(必填项) | http服务地址 | http://0.0.0.0:0000 |
请求头 | 填写json格式的参数 | {"key":"value"} |
字符集 | 字符编码集,默认utf-8 | utf-8 |
HTTPSPOST
选择此项会将数据通过post请求发送至https服务,配置项如下:
配置项名称 | 配置项描述 | 示例 |
---|---|---|
http服务路径(必填项) | https服务地址 | https://0.0.0.0:0000 |
请求头 | 填写json格式的参数 | {"key":"value"} |
字符集 | 字符编码集,默认utf-8 | utf-8 |
DIP实例的保存与启动
- 配置信息填写完成后,点击保存,成功保存后会在森数据DIX的数据集成页面看到新建的DIP实例
- 点击开始/启动按钮。
名词解释
已接入:当前数据接口接入到的总数据量
处理中:当前数据接口正在进行处理的数据量
发送中:当前数据接口正在向外部发送的数据量
已发送:当前数据接口发送到外部的总数据量- 待启动成功之后,点击日志按钮,查看数据是否能正常接入