zoukankan      html  css  js  c++  java
  • SSISDB8:查看SSISDB记录Package执行的消息

    在执行Package时,SSISDB都会创建唯一的OperationID 和 ExecutionID,标识对package执行的操作和执行实例(Execution Instance),并记录operation message,统计executable的执行时间,便于developers 优化package的设计,对package进行故障排除。

    一,在package发生错误时,查看失败的Executable

    An executable is a task or container that you add to the control flow of a package.

    复制代码
    select e.project_name,    
        opt.operation_type_descr as Operation,
        obt.object_type_descr as object_type,
        e.object_id,
        ops.operation_status_descr as operation_status,
        et.package_name,
        et.package_path as ExecutablePath,--relative path
        --es.execution_path as ExecutableFullPath,
        et.executable_name,
        cast(es.execution_duration/1000/60.0 as decimal(10,1))as Duration_M,
        er.execution_result_descr as execution_result,
        es.start_time 
        --,es.end_time,
    from catalog.executions e
    inner join helper.OperationType opt 
        on e.operation_type=opt.operation_type
    inner join helper.ObjectType obt 
        on e.object_type=obt.object_type
    inner join helper.OperationStatus ops 
        on e.status=ops.operation_status
    inner join catalog.executables et
        on e.execution_id=et.execution_id
    inner join catalog.executable_statistics es
        on et.executable_id=es.executable_id and et.execution_id=es.execution_id
    inner join helper.ExecutionResult er 
        on es.execution_result=er.execution_result
    where e.execution_id=104627        --Specified ExecutionID
        --and es.execution_result=1       -- 1 (Failure)
        --and et.package_name=N'PackageName.dtsx'
    order by et.package_name,es.start_time
    复制代码

    二,查看Operation记录的message

    1, SSIS 记录海量的Operation Message 和Event Message 数据,在查看这些文本信息时,应该设置好查询条件。

    复制代码
    select 
        opt.operation_type_descr as Operation,
        obt.object_type_descr as object_type,
        o.object_name,
        ops.operation_status_descr as OperationStatus,
        mt.message_type_descr as message_type,
        mst.message_source_descr,
        om.message,
        om.message_time
    from catalog.operations o
    inner join helper.OperationType opt
        on o.operation_type=opt.operation_type
    inner join helper.ObjectType obt 
        on o.object_type=obt.object_type
    inner join helper.OperationStatus ops
        on o.status=ops.operation_status
    inner join catalog.operation_messages om
        on o.operation_id=om.operation_id
    inner join helper.MessageType mt 
        on om.message_type=mt.message_type
    inner join helper.MessageSourceType mst 
        on om.message_source_type=mst.message_source_type
    where o.operation_id =104627 
        and om.message_type in
        (
            120,--Error
            110,--Warning
            130--TaskFailed
        )
    order by om.message_time desc
    复制代码

    2,查看Operation 的Event message,对Package进行troubleshoot时,Event Message非常有用

    复制代码
    select
        opt.operation_type_descr as Operation,
        obt.object_type_descr as object_type,
        o.object_name,
        ops.operation_status_descr as OperationStatus,
        em.event_message_id,
        em.package_name,
        em.event_name,
        em.message_source_name,
        em.subcomponent_name,
        mt.message_type_descr as message_type,
        mst.message_source_descr as message_source_type,
        em.package_path,
        em.event_message_id,
        em.message_time,
        em.message
    from catalog.operations o
    inner join helper.OperationType opt 
        on o.operation_type=opt.operation_type
    inner join helper.OperationStatus ops 
        on o.status=ops.operation_status
    inner join helper.ObjectType obt 
        on o.object_type=obt.object_type
    inner join catalog.event_messages em
        on o.operation_id=em.operation_id
    inner join helper.MessageType mt 
        on em.message_type=mt.message_type
    inner join helper.MessageSourceType mst 
        on em.message_source_type=mst.message_source_type
    where o.operation_id =104627 
        and em.message_type in
        (
            120,    --Error
            110,    --Warning
            130     --TaskFailed;
        )
        --and em.package_name=N'PackageName.dtsx'
    order by em.message_time desc
    复制代码

    3,查看Event Message 的Context,以及相应的Property 和PropertyValue,这是最底层的SSIS 执行时Event 记录的值,能够查看到Package执行时的连接字符串的值

    复制代码
    select emc.context_depth,
        emc.package_path,
        ct.context_type_name as context_type,
        emc.context_source_name,
        emc.property_name,
        emc.property_value
    from catalog.event_message_context emc
    inner join helper.ContextType ct 
        on emc.context_type=ct.context_type
    where emc.event_message_id=23929777
    and emc.context_type=70
    复制代码

    Appendix:

    关于辅助表,请参考《SSISDB6:Operation》的附件

    参考文档:

    Views (Integration Services Catalog)

    SSIS Catalog

  • 相关阅读:
    图片滚动显示,鼠标滑过放大显示
    图片定位 css
    遍历datalist中的checkbox,并获取此时的值
    SQL:某个字段重复的时候只查询出最后插入的那条
    【MM系列】SAP 采购订单收货后不能修改价格的增强
    【MM系列】SAP S/4 HANA的物料编码40位设置
    【MM系列】SAP 采购订单的批量修改
    【MM系列】在SAP里查看数据的方法
    【公众号系列】SAP HANA 平台的优势
    【公众号系列】SAP的新零售
  • 原文地址:https://www.cnblogs.com/wangsicongde/p/7551178.html
Copyright © 2011-2022 走看看