Using Python to parse Planning Analytics /TM1 audit log files and produce Visualizations.

Planning Analytics, aka TM1, does not come with a way to record and report audit information out of the box. Traditionally the data from the audit log file would be loaded the back into TM1 cube in order to produce any meaningful audit information. The reason we were not too keen on the above approach was that it ends up consuming system resource which could otherwise be used for other TM1 related activity.
It was either that or buy one of the third-party tools to extract audit information.

We ran into a similar situation and decided to leverage python to parse the Planning Analytics Audit log files. We were quickly able to extract basic auditing information such as

  • How many users log in.
  • Who those users are.
  • Which of those are most active.
  • What time of the day they login..etc.

The process flow of the Python program is listed below.

  • Reads the TM1 AuditStore log file found in the listed file location one by one.
  • The extracted information gets processed further into a predefined format by the program,
  • Then the user name, login date, and time data get written into “UserLoginSummary” table into a DBSQLITE database.
  • The data from UserLoginSummary table gets further summarized, and resultset is loaded into ‘UserLoginCount’ table in the same DBSQLITE database.
  • Once all the ETL process is complete, Tableau or Cognos or other BI tools can be used to read the data in those DBSQLITE database tables. And needed Visualizations created from the information.

I have saved the program in my GitHub space, and the link is listed below.

If you need more information or have any questions on the above method, please drop me a note.

One comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s