如何从事件审计追踪记录中提取数据

Version 3
    问题描述

    审计追踪记录了所有事件的动作,是一个很有用的工具,可以将动作形成文档,例如需求的分配,还有关闭一个需求。目前,除了审计追踪窗口,没有别的方法来显示所有的信息。


    解决方案

    审计追踪存储的表名为 'tps_audit_trail'. 这里的每个条目都含有相关的列:

     

    'tps_object_guid' = 事件ID.

    'tps_creation_datetime' = 创建条目的日期和时间.

    'tps_creation_user' = 是由哪个用户发起的,发起用户的ID.

    'tps_function_id' = 动作的ID (例如停止时钟等).

     

    将表'tps_function_id' 中的动作ID转换为动作名称,需要参考这个表:  'md_business_function' ,这里的 'md_guid' 匹配 'lc_title' (停止时钟,启动时钟等).

     

    时间ID在 'im_incident' 表中, 'pm_guid' 匹配 'tps_object_guid'。 从'tps_autid_trail'表的'im_id' 值就是在控制台显示的ID值.

     

    创建一个水晶报表可以来显示所有这些信息,或者这里有一些演示用的SQL语句:

    (这个脚本只是用来显示事件中的动作,不能显示创建的日期或其他任何可审计的属性)

     

    SELECT     T3.im_id AS "Incident Id",

         T1.tps_creation_datetime AS "Date/Time",

         T2.md_title AS "Event",

         T4.tps_title AS "Triggered By"

    FROM tps_audit_trail T1

    INNER JOIN md_business_function T2

         ON T1.tps_function_id = T2.md_guid

    INNER JOIN im_incident T3

         ON T1.tps_object_guid = T3.pm_guid

    INNER JOIN tps_user T4

         ON T1.tps_creation_user = T4.tps_guid

    WHERE T3.im_id = 1 --UPDATE TO INCIDENT REF NUMBER

    ORDER BY T1.tps_creation_datetime ASC

     

    适用于

    Service Desk 7.1.3 或更新

     

    英文原文

    https://community.landesk.com/support/docs/DOC-4216