TL;DR - imports the 3-4 system_health files that are automatically saved to disk.
I had a problem this week with a deadlock. I went looking in the ring buffer for the system_health session, but it had already aged out.
So, remembering that the system_health session has a file target, went looking for it (Jason Brimhall has code for it - thanks!). The file went back further but not all the way. Since the event definition says to keep a couple of older files, I use the current file to find the path, list all the files in that path (xp_dirtree; doesn't require xp_cmdshell), then walk through and import all of them.
You could simplify it a lot and use fn_xe_file_target_read_file and tell it to read all files like system_health*0.xel in the path, but with my luck those ending numbers will sometimes end in a non-0 value. I use the 0 in the mask because I make local copies of the files occasionally, so that weeds out " - Copy".
When I get some free time, I'll get my current sp_server_diagnostics/system_health parsers to work with it (see http://thebakingdba.blogspot.com/2015/04/systemhealth-2-dynamic-and-full-parsers.html and http://thebakingdba.blogspot.com/2012/12/spserverdiageventparser-make.html). I started on that, but it's cartesianing on me and I don't have time to fix it right now.
Enjoy!
Wednesday, December 9, 2015
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment