1

I'm trying to get a better understanding of how various third party applications reach into a Microsoft SQL Server data warehouse and gather data before allowing report writers to work with it. I'm working with a SQL 2008 R2 instance and ultimately I want to capture all requests going into and out of the warehouse at a SQL level over a short period of time.

So right now I'm using Extended Events to do this, and the events I'm monitoring are:

SQL_STATEMENT_COMPLETED
SQL_STATEMENT_STARTING
SP_STATEMENT_COMPLETED
SP_STATEMENT_STARTING
RPC_STARTING
RPC_COMPLETED

However when I run this, open Tableau 8 and connect to the server and pull in data from a specific table, I don't see any activity in the XE. So am I missing an event that would see the SQL?

Sean Long
  • 2,163
  • 9
  • 30
  • 49
  • So do you see activity getting pulled back when you use SSMS or something instead of tableau? – Aaron Bertrand Nov 19 '13 at 21:34
  • Yes. I can see the queries being run by SSMS/Excel just fine, as well as some db health stuff that runs periodically. Just nothing from Tableau. – Sean Long Nov 19 '13 at 21:36
  • Ok, next dumb question: are you absolutely sure tableau is hitting the same instance? Can you show your connection strings? – Aaron Bertrand Nov 19 '13 at 21:40
  • Yeah, I'm positive that it's the right connection string, and my XE are too. I actually think I just figured it out by firing off Profiler with some additional events selected: It looks like Tableau triggers SQL:StmtStarting, SQL:BatchStarting, SP:StmtStarting rather than the events I was looking at. – Sean Long Nov 19 '13 at 21:42
  • I'm going to do a little more research on this and then will add my own answer once I get things showing up in XE. – Sean Long Nov 19 '13 at 21:42
  • Tableau uses cache pretty extensively. On workbook startup, it will do a query and hold the data in memory for quite a while. Part of what makes it fast. If you can, restart the service and see what happens in the eventing on the server. – Brian Knight Nov 19 '13 at 21:48
  • Between my tests I've been completely closing out of the Tableau desktop program - I didn't see a service running that looked like it was attached to Tableau. However, now that I know what it's looking to do in SQL via Profiler (why didn't I just do that at the beginning) I think I've got a good idea of how to proceed. – Sean Long Nov 19 '13 at 21:53

1 Answers1

-1

You can scrape the Tableau log files. It pretty much logs all the queries it executes and has some timestamp info too.

AustinDahl
  • 832
  • 7
  • 9