Skip to Content
Technical Articles
Author's profile photo Mohamed EZZAT

SAP Analytics Cloud – Monitoring All Model Import/Export Jobs

Introduction:

If you have a huge number of import models on your SAP Analytics Cloud tenant and wondering how you can monitor all of their import jobs from one place, you came to the right blog post.

In this blog post I will be explaining how you can create a one stop shop story, from which you check:

  • When the job was executed.
  • By which user it was executed.
  • Whether it failed or succeeded.
  • Which queries are used in which models (By following a certain logic).

Sample%20Story

Sample Story

Before we start, please note that there is already a notification feature available per each model, it can be switched on from the “Data Management” tab, through the toggle button labeled “Notify me of refresh failures by Email” at the bottom of the page, by activating this, you will be recieving an email for each import job that failed.

There is also the “Schedule Status” page that shows the status of all the import jobs, it can be accessed through from “Connections” then “Schedule Status” tab.

Schedule%20Status

Schedule Status

Step by Step Guide:

Activate SAP Analytics Cloud Usage Tracking Content

Ignore this step if it is already active.

The SAP Analytics Cloud Usage Tracking Content provides useful insights about the activities, objects, files, and objects on your tenant. In our scenario we will be using the Activities and Objects data models.

The content can be activated by navigating to Content Network > SAP Analytics Cloud Usage Tracking Content > Adjust the import settings > Import.

This content is very useful in general, I have already used it before in a scenario where the customer wanted to check which models are used in which stories.

Create a new Story

Once the content is successfully imported, it will be available in Public/SAP_Content/SAP Analytics Cloud Usage Tracking Content.
An interesting feature that has been out for some time is that you now can choose a model and directly create a story based upon it, instead of creating a new story and choosing the initial model when an object is added.
Go to the specified path and choose the “SAP__SAC_USAGE_ACTIVITIES” model, navigate as per the screenshot below:

Choose between Responsive and Canvas based on your Preference.

Insert a table, in the Buildler Panel, click add Linked Models, navigate to the same path and choose the “SAP__SAC_USAGE_OTHER_OBJECTS” model, create the link based on Object ID, make sure you have selected description.

Linked%20Models

Linked Models

 

The story design is entirely based on what you need, I will be referencing the SAP Analytics Cloud objects and features I used in my scenario in the upcoming steps.

I used a responsive page, created 3 lanes, 1 top horizontal lane where a chart is placed, 2 vertical lanes with 1 table inside of each.

Story Filters

Model “SAP__SAC_USAGE_ACTIVITIES”

Timestamp

If you need the story to fetch data based on the current date, simply create a story filter based on “Timestamp”, filter by range, set the granularity for Day.

Timestamp%20Range

Timestamp Range

In case you want to do a comparison between different time periods, do not set this as a story filter.

Object Type

Set its value to “Model”.

Activity

Set its value to “Import”, you can also select “Export” in case monitoring export jobs was desired.

Model “SAP__SAC_USAGE_OTHER_OBJECTS

Description

Select “All Members”, the usage of this filter can also extend to searching for the used queries as well, currently there is no way to retrieve the query related to a model, however I had the inspiration for this idea from a very clever customer I had, simply suffix or prefix the model description by the query name that is used, by doing this you can easily search for the query name in the description filter, and isolate all the models that use it.

Model%20Description

Model Description

Description%20Filter

Description Filter

Comparison – Stacked Bar/Column

Placed in the top horizontal lane, based only on model “SAP__SAC_USAGE_ACTIVITIES”, having in measures “Count of Activities” and “Status” in the Color, using a new pallet consisting of 2 Swatches Red, and Green.

Activated Linked Analysis based with Interactions apply to “All widgets on the Page”, the purpose of this is to filter all other widgets based on the status in a visual manner.

The Models by Status Table

This table shows the Timestamp, Model description, User ID, Status, and the calculated measure flag.

 Model By Status

Note that:

  • Only the Model Description is coming from the “SAP__SAC_USAGE_OTHER_OBJECTS” Model.
  • Flag is a calculated measure, having the formula”IF([d/”SAP__SAC_USAGE_ACTIVITIES”:STATUS_TYPE]=”Success”,
    1,
    IF([d/”SAP__SAC_USAGE_ACTIVITIES”:STATUS_TYPE]=”Fail”,
    0,
    99
    )
    )”

It is created in order to be able to use the “Thresholds” feature, in order to show red in case of failure and green in case of success.

Thresholds

 

  • From the “Styling Panel” you can choose how the thresholds can appear, in my case I left it as symbol, then set the font to transparent in order to hide the values.
  • The Count of Objects measure from the other model is hidden by using the “Hide Column” feature.
  • Linked Analysis has been applied to only affect the Navigate to Model table.

Navigate to Model Table

This model contains only the Description and Name ID, it was created to be able to directly jump to the relevant model using the hyperlinking feature, the reason why it needed a separate table is a current limitation on linking external content on a blended table.

This feature is very interesting, it can be used to jump to go to any link that has a static format until a certain value that you have in your report, lets have the current scenario as an example.

You can directly navigate to any SAP Analytics Cloud model by using this format https://<TENANT LINK>/sap/fpa/ui/app.html#/modeler&/m/model/<NAME ID>  to achieve this, right click any Dimension in the relevant table> Table Functions > Add > Hyperlink

Place the static part of the link, then in the relevant position, in our case the last part of the URL, use the drop down list to select the dimension supplying the values, in our case it’s available in IN USE, choose Name ID.

External Hyperlink

The Label indicates the text that will appear when you choose the relevant row and click on “Navigate to External URL”.

Navigate%20to%20External%20URL

Navigate to External URL

Navigating to the URL can either be done through selecting a row, clicking Navigate to External URL, then selecting the Description that appears, or simply adding the relevant Dimension, in this case “Name ID” to the main table, then “Show Hyperlinks in Table”, then it will turn into what is exactly shown in the screenshot above, and can be directly consumed.

Conclusion:

The story design is entirely based on your needs, it can be simpler or more complicated than this.

I hope this was informative, it was also a good chance to emphasize and introduce some features that exist and can be used in different ways on SAP Analytics Cloud.

Thank you for your time, please feel free to add any suggestions or feedback in the comments.

Assigned tags

      7 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Thomas Karner
      Thomas Karner

      Great blog!

      Two questions arise by myself:

      a) Why is nothing similiar available out-of-the box?

      b) Is there any possibility to get actively informed in case an import job fails?

      Author's profile photo Mohamed EZZAT
      Mohamed EZZAT
      Blog Post Author

      Hi Thomas,

      Thank you for your feedback!

      Currently what is available out of the box is the "Schedule Status" available in the "Connections".

      As for getting actively informed when an import job failes, toggeling the "Notify me on refresh failures by email" will send you an email like the one in the screenshot below:

      Refresh%20failure%20in%20model%20XYZ

      Refresh failure in model XYZ

      This will only be recieved if a specific job failes, and you can directly go to the model using the "View Model" button.

      Best Regards,

      Mohamed Ezzat

       

      Author's profile photo Thomas Karner
      Thomas Karner

      Thanks Mohamed!

      Where can I find the option "Notify me on refresh failures by email"?

      Is it just available for new models only or also for classic model (where I´ve currently imports running)? Further I also couldn´t find the toggle for dimension imports.

      BR,

      Thomas

      Author's profile photo Henry Banks
      Henry Banks

      Hi Thomas Karner

      you can find that setting at the bottom of the 'data management' screen (where the import jobs are scheduled). if memory serves me right, it exists for both old and new models.

      Regards,

      H

      Author's profile photo Thomas Karner
      Thomas Karner

      Thanks! How could I have missed that 🙂

      Author's profile photo Fco. Jose Martin Vazquez
      Fco. Jose Martin Vazquez

      Thanks Mohamed. Nice Job!!

      I have a question: What do you mean with "Refresh Now"  button in Action col?  is this to relaunch the import  job again manually?

      I'm so interested in being able to launch a specific import job from a button manually in case it fails..

      Thanks.

       

      Author's profile photo Mohamed EZZAT
      Mohamed EZZAT
      Blog Post Author

      Hi Jose,

      Thanks for your feedback! Yes, this is possible from the "Schedule Status" window, in the Action Column you will find a button labeled "Refresh Now", it will manually trigger the import job once it is clicked.

      Schedule%20Status

      Schedule Status