• thanks for the info guys, i'm diging through the details now.

    I've got a solid handle on what i was after now, a fresh set of eyes got me started.

    I'll post my results and an article on it when i finish it, but i'm able to script the [data] and [action] items as they appear int he session definitions, but now i want a single coherent script to build it all together.

    for example, here's how i'm getting the actions that were definied for a given extended events session:

    --actions

    ;WITH MyCTE

    AS

    (

    select

    sess.name,

    targz.target_name ,

    actz.action_name

    from sys.dm_xe_sessions sess

    INNER JOIN sys.dm_xe_session_targets AS targz

    ON sess.address = targz.event_session_address

    AND targz.Target_name = 'event_file'

    INNER JOIN sys.dm_xe_session_events evtz

    ON targz.event_session_address = evtz.event_session_address

    inner join sys.dm_xe_session_event_actions actz

    ON targz.event_session_address = actz.event_session_address AND evtz.event_name = actz.event_name

    WHERE sess.name = 'ApplicationErrors'

    )

    SELECT s.Colzs

    FROM(SELECT

    Colzs = STUFF((SELECT ',' + 'n.value(''(action[@name="' + action_name + '"]/value)[1]'', ''varchar(max)'') ' + CHAR(13) + CHAR(10)

    FROM MyCTE

    ORDER BY action_name

    FOR XML PATH(''), TYPE).value('.','varchar(max)'),1,1,'')

    ) s

    Lowell


    --help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!