Logging your users

Occasionally during a planning process, disaster strikes. Users can accidentally delete hard-worked-on plans, change some key drivers or alter report values during a printing process. Plans may be altered by unwittingly by colleagues or by well meaning management without understanding the consequences. This is where you need to understand what has been entered in the system and by whom. Jedox gives you the flexibility to create user logs to illustrate what has changed.

So, to set up user Logging do the following:

Step 1. Change your palo.ini

Ensure your palo.ini has the following lines

worker “C:\Program Files\Jedox\Jedox Suite\svs\SupervisionServer.exe”
workerlogin information
use-cube-worker

Step 2. Change your sep.inc.php file

The file location should be here: ..Jedox\Jedox Suite\svs\sep.inc.php. Change the file to look like this:

<pre><?php
 /* include './sample_scripts/sep.inc.default.php'; */
 include './custom_scripts/sep.inc.changelog.php';
?>

Step 3. Download the changelog script here

Step 4. Copy to location

Copy the sep.inc.changelog.php to ..\Jedox\Jedox Suite\svs\custom_scripts folder.

Step 5. Modify sep.inc.changelog.php script.

So, by default the Supervision script is listening to the Demo/Sales cube for 2015 and Budget only. Any value changed outside of this range will not be logged. Change the database and cube reference to the one that you want to log, and modify the dimension arrays to suit your model. NOTE: It is not a good idea to log everything (all versions, years, etc) as Supervision Server will log out at all times, including when you run and ETL Process. Much more efficient to just specify the area that you want to “listen” to:

 if($database == "Demo") {
     if($cube == "Sales") {
     // array, $elements (nested: dimensions, element names)
       $AreaA = array(
         DIMENSION_TOTAL,
         DIMENSION_TOTAL,
         DIMENSION_TOTAL,
         array("2015"),
         array("Budget"),
         DIMENSION_TOTAL
       );
       $this->WatchCubeArea($AreaA, 'FunctionA');
     }
 }

Step 6. Restart Supervision Server.

If you have been run Supervision Server on your Jedox server, you can just restart it using the web interface:

2014-08-14 11_30_50-Jedox Web

 

The ‘live’ restart of Supervision Sever is very handy as you can modify your script, restart and see the results.

Step 7. See the results.

Change a value in a cube where the script will be triggered.

2014-08-14 11_34_09-Jedox Web

 

Now, go to Logs in System Manager and filter Message with text “cell changed”

2014-08-14 11_34_51-Jedox Web

You will see that the old value, new value, username and time stamp is logged here. You have complete freedom in the script to log what you want. For example, you could log the location/IP of the user, the delta value, and anything else that may be important to identify the person who has changed the data.

 

One thought on “Logging your users

  1. NicoD82

    That’s great and can be very useful. Only two things I’m missing:
    – it doesn’t log the splash commands “like” and “copy”
    – the “set” and “add” value splashing (‘!’ or ‘!!’) discontinued to work for the logged area. Instead it works like ‘#’ or ‘##’.

    Reply

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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 )

Google+ photo

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

Connecting to %s