Showing posts with label active directory. Show all posts
Showing posts with label active directory. Show all posts

Tuesday, October 13, 2015

Tableau Push instead of Subscribe notifications

Being able to subscribe to views or workbooks was a huge added feature when it was added in Tableau v8.0. Users could get the info in their email on a schedule instead of having to go to the web page. Then came the questions....

"Can I get a notification when an extract updates?" No.

"Can I subscribe a group?" No.

"Can I sign other people?" No.




We do our best to let people know which schedule to choose. 
I have seen people who get daily messages for a dashboard that updates monthly. Not only does the server have unnecessary load, but they get 29 extra emails a month.

I use Pentaho Data Integration to manage other Tableau Server tasks and I was working on notifying owners of when extracts failed and realized that the opposite would be to notify them when it is successfully updated.

I boiled what was subscribe-able down to 3 things:
  1. Successful Workbook Extract Refresh
  2. Successful Datasource Extract Refresh
  3. Workbook Publish
The third is because there are some workbooks that are manually worked/QA'ed monthly and then published from a QA version to a Prod version. You might want to add a fourth if there are datasources you manually publish. 

Watch the video for more details on how the Pentaho Job/Transform works, but the overview is:
  1. Run Custom_Subscriptions.kjb Job, which deletes old images and launches the transform
  2. Figure out what has happened and is actionable
    1. Query Tableau Database to find actionable events
    2. Join it to a table/file with a list of who is subscribed to what
  3. Load some details for the view URLs
  4. Generate the emails
    1. Find unique views
    2. run tabcmd to generate the images once for each subscribed dashboard
  5. Email each person/group the image/content they are subscribed to.
I have two tables/text files containing
  • email addresses, subscribed object, site, etc
  • Details about the subscribed object (url, path, site, filetype)
We use Active Directory groups to control access, so most dashboards already have a corresponding group that we can email. This prevents having to manually manage individual users.

I have only tested images, but switching the file type from .png to a .pdf or .csv should work





There is also a #DATA15 session on how they do this at Tableau and I am really excited about seeing this. Maybe they will announce that it will be a new feature in Tableau 10.

Wednesday, September 23, 2015

Using Pentaho to Sync Tableau Server AD Groups

I have been using Pentaho Data Integration for a while at work to ETL data here and there, but have also been finding it useful for managing our Tableau Server. I wanted to share some of this work so here is the first one.

 I know that Tableau Server 9.1 can now automatically sync AD groups. If you are running an older version this might be useful. You could also use this as a starting point for some other purpose. Run it  on a schedule to keep your groups synced.

We had a script prior to this that we would add groups to. The issue was we have 28 sites on our server and only a small percentage of the total groups made it onto the script. This way everything stays in sync.

   Basically it:
  1.  Queries the internal Tableau Server DB and comes back with a list of all the AD groups in all the sites. 
  2. It then compares the results to a blacklist csv file and filters out any on the blacklist.
  3. It then runs a tabcmd sync group for each group. 
  4. Logs the results of the syncs to a database. 
Download thePentaho transform here.