Auditing without an HMI application

<< 点击显示目录 >>

主页  mappServices帮助手册 > mapp Audit:事件管理 > 使用案例 >

Auditing without an HMI application

mapp Services V5.16

要求

一个应用程序应该记录来自外部(第三方)HMI设备的数值变化。它应该可以作为一个用户登录,并从这个HMI设备上改变各种参数。切换用户和参数的变化应被连续记录(新旧值)。原始数据应该以XML格式导出(不过是没有文本的数值)。这样就可以在以后从原始数据中拼凑出文本。

解决方案

组件列表

MpAuditTrail (自有MpLink)。记录审计事件

MpAuditValueChange (来自MpAuditTrail的MpLink)。创建一个通用的值变化事件,它可以来自不同的来源(在这种情况下来自MpAuditValueChange组件)。

MpUserLogin (自有MpLink)。来自库MpUserLogin的组件,用于记录用户的进入/退出。

连接图

 

mpauditusecase_1_connection

 

使用mapp组件

MpAuditTrail 实现了主要的事件记录器。所有的事件都记录在一个环形缓冲器中。为了防止数据丢失,应该创建档案。数据可以用 "导出 "命令导出。

MpAuditValueChange 组件被用来生成一个通用的值变化事件。新旧参数为此被转移到这个函数中。

组件 MpUserLogin 是必要的,用于将价值变化事件与登录的用户联系起来。所有发生的事件都与登录的用户相关联。

设置/设定

输出格式和原始数据的导出都是在配置中定义的。

[%[TIME=%c]] 值被[%op]改变。[%id]从[%old]到[%new]。 (语法在 定义事件文本一节中有更详细的解释 。)

configuration

输出后的文本在文件中看起来是这样的(例子)。

“2015-02-03 10:54:32.546 Value changed by User1: Speed from 20.000000 to 25.000000”.

额外的原始数据(<Data>)被添加到文件的条目中,看起来像这样:

    <Event ID="0x950010" Record="3">
      <Text>2015-03-02 11:05:03.720 Value changed from User1: Velocity from 20.000000 to 25.000000</Text>
      <Data>
        <time>1425294303.720 +00:00</time>
        <map>Audit</map>
        <old>20.000000</old>
        <new>25.000000</new>
        <dpid>ExtNumeric</dpid>
        <ev>16</ev>
        <op></op>
      </Data>
    </Event>

时间基于 "Unix时间"(秒,1425294303),带有毫秒计数器(.720)和UTC调整(+00:00)。