Sql server 从SQL Server审核日志或SQL审核跟踪提取应用程序名称的方法?
我有两个示例SQL Server 2012和2014实例,以及一个中央syslog服务器,我从几周前开始搜索web,但找不到解决方案 我想从相关来源、审核日志或审核跟踪中删除“应用程序名称”字段或任何类似字段。我在.trc文件中找到了所需字段,但在审计日志中没有找到任何内容,也找不到将此类日志写入可读文本文件(以便将其转发到syslog服务器)的方法 最好知道正在使用数据库资源、连接和执行查询的客户端应用程序名(例如:SQLServerManagementStudio)或进程名(pymssql)。。。等等 有人已经面临这个问题了吗 找不到如何将此类日志写入可读文本文件(以便将其转发到syslog服务器)的方法 更多示例:Sql server 从SQL Server审核日志或SQL审核跟踪提取应用程序名称的方法?,sql-server,event-log,syslog,Sql Server,Event Log,Syslog,我有两个示例SQL Server 2012和2014实例,以及一个中央syslog服务器,我从几周前开始搜索web,但找不到解决方案 我想从相关来源、审核日志或审核跟踪中删除“应用程序名称”字段或任何类似字段。我在.trc文件中找到了所需字段,但在审计日志中没有找到任何内容,也找不到将此类日志写入可读文本文件(以便将其转发到syslog服务器)的方法 最好知道正在使用数据库资源、连接和执行查询的客户端应用程序名(例如:SQLServerManagementStudio)或进程名(pymssql)
我相信只有当客户端的connectionstring中出现“Application name=value”条目时,才会填写ApplicationName。但我不确定
SELECT TE.name AS [EventName] ,
T.DatabaseName ,
t.DatabaseID ,
t.NTDomainName ,
t.ApplicationName ,
t.LoginName ,
t.SPID ,
t.Duration ,
t.StartTime ,
t.EndTime
FROM sys.fn_trace_gettable(CONVERT(VARCHAR(150), ( SELECT TOP 1
f.[value]
FROM sys.fn_trace_getinfo(NULL) f
WHERE f.property = 2
)), DEFAULT) T
JOIN sys.trace_events TE ON T.EventClass = TE.trace_event_id
WHERE te.name = 'Data File Auto Grow'
OR te.name = 'Data File Auto Shrink'
ORDER BY t.StartTime ;