Download the latest version (.exe): here
GitHub code for both (+ workbooks) available: here
Latest workbook – click the image below to interact:
I’m going to immediately caveat this with the fact that this is unsupported – although I am interested if this thing breaks! It’s also purpose built for Windows logs on 2018.2+ and Linux on 2018.1+.
For the eagle-eyed Server Admins amongst us, you may have noticed a few changes to your log files following the introduction of TSM. First of all, the structure has changed ever so slightly. Logs are now located in this directory:
Second, there’s a slightly tweak to the naming convention. The old vizqlserver* logs have an additional tag of nativeapi_ on the front. This is a minor change to the naming convention but helps identify where the rich detailed logs lie.
Finally, and most importantly, there’s a change in the logging process itself. And it comes as part of a program we’ve called Activity Resource Tracing – ART, for short. ART introduces in line memory and CPU logging for certain important statements and looks a little like this:
You can see the wealth of information that lies in the end-query k value. Wouldn’t it be nice to extract the information from each line? Imagine the possibilities:
- Identify workbooks that use large amounts of CPU or memory.
- Spot users that could benefit from some gentle advice on best practices.
- Visualise usage peaks and identify if your server is hitting capacity.
During Tableau Conference Europe, my colleague Alex Ross and I covered a few different ways to extract that information. But now, I want to throw one more method in to the mix: LumberSnake.
LumberSnake is an evolution of some extracting processes we been adopting internally at Tableau, originally pioneered by David Spezia and Lumberjack. At its core, it’s a simple way to extract the super useful vizql logs and transform it in a way that makes sense for Tableau to use. Developed in Python, all you have to do is run it, select your extracted viz logs, and let the program do the rest. Simple!
Better yet, I’ve made this open source so the full code is available on GitHub! As it is a Git project, feel free to contribute if you spot any enhancements. If you do want to run this directly from Python, made sure you have Python 2.7+ installed as well as the Pandas library.
LumberSnake will output a .csv file with your transformed data. I’ve also included the base workbook I currently use in the Git repository so you can point it at your output and enjoy!
Check it out and let me know your thoughts on Twitter. In the meantime, expect a few more blog posts in the future that you can use as a reference behind the information you extract here.