Skip to Content

End-User Experience Monitoring (EEM) – What it is and why you should consider it

When first reading or hearing about what EEM is, many find it very interesting and more or less everybody I talked to liked the idea and concept of the tool. However, whenever it had to be determined why the methodology should be implemented most implementation activities ran out of steam. In this blog I would like to share views about how and when to use the tool in order to address meaningful use cases: help giving a promising concept a clear purpose in order to justify the investments required to truly adopt it.

I will start with a rough overview of some use cases. More details will follow over time.

  1. Monitoring of response times and availability
  2. Automated Root Cause Analysis
  3. Continuous Improvement
  4. Business Continuity

Monitoring of response times and availability

The regular execution of a synthetic script would give you the possibility to get a notification about a problem before the end users are complaining about it. This would include the following potential problems:

  • Increasing response times at one or more locations
  • Abnormal terminations due to functional errors within the application (e.g. exceptions because of database problems)
  • System down situations even if no user using the system (e.g. during the night)

You can already start the investigation immediately after you got a notification from EEM and get additional time before your business is involved.

An example would be a down situation of your internal corporate Portal. If the system goes down at midnight and the first end users are trying to use the Portal at 8am you would have around 8 hours for investigation and fix of the problem. As if nothing had happened …

Sample for spikes and functional errors

The graph above shows some spikes in response times as well as functional problems (the red crosses). If you select one of the monitoring points – or a red cross, the monitoring UI will show you the related execution and provide more details.

Execution results

A look into the Server log files shows that the server was restarted at this time.

Automated Root Cause Analysis

The tool could help to catch, to measure and analyze sporadic long response times, so-called “spikes”. Such issues are typically hard to capture and impossible to reproduce and can lead to serious arguments between business users asking to fix a problem that is perceived a “phantom” by the IT specialists

The problematic business transaction needs to be recorded once with the EEM recorder. Afterwards the script can be executed automatically on a regular basis. The more often the script runs the higher is the probability that the script execution will run into the same problem.

If you catch such a long running execution you will be able to drill down into the performance data, collected by EEM. This capturing will give you important information like:

  • The probability for such a performance issue
  • Precise performance measurements for the response time
  • A response time break down into the involved components (e.g. Client, Server and database)

Graphical result

The sporadic performance degradation was caught between 10:30 and 10:45. A right mouse click on the measurement point let you jump directly into the End-to-End trace of this execution and show you details about this execution.

Time distribution

The time distribution between the involved layers in the picture above points already to a backend problem. Most of the time was spent on the server side.

Time distribution - backend

The details show 1800 ms for the ABAP coding and more than 1min on the database. Most of the time was spend on the database.

Continuous Improvement

The idea of continuous improvement is a permanent monitoring of critical business processes for performance and functional issues. These results can be analyzed by using the integrated E2E tools of Solution Manager. Based on these results you can improve your solution on a daily basis.

Increasingly, business and IT groups agree on required transaction response times that are seen as prerequisite of a certain level of business user efficiency. With such agreements in place the IT group has the opportunity to constantly generate business benefit by improving the responsiveness of key business scenarios and have solid evidence for the achievement.

Business Continuity

The life time of a software solution sees regular maintenance events. Business’ expectation is clearly that utilization of the software is by no means negatively affected by this technical event. A comprehensive monitoring before and after these events helps you to control that your business users can work with the same – or even better – availability and performance of their process. And if the numbers indicate that this is not the case, you will exactly know where the change is coming from. You will have plenty of metrics that help referencing performance KPI on all levels, even in the test phase before the changes introduced by software maintenance are moved to production.

Samples for such events are system upgrades, applying of patches or changing in custom development.

System upgrade event

The picture above shows a successful upgrade. The system was down for a while but after the GoLive the system performed better than before, for on location and similar than before from the other location.

The reason for this could be an improved bandwidth (upgraded hardware or network connection) or an improved UI framework which reduces the data transferred to the client.

System upgrade and Code fix

The second picture (above) shows a performance problem, introduced during an upgrade. After Go-Live the performance went down but 2 day later after applying a patch in the custom coding the system performance went back to normal.

Other EEM related Blogs:

End-User Experience Monitoring (EEM) – Use case: CRM client freeze

End-User Experience Monitoring (EEM) – Activating Custom attributes–activating-custom-attributes

You must be Logged on to comment or reply to a post.
  • Hi,

    We have a Solution Manager system landscape up and running for change & incident management. We do our availability and load monitoring with an external tool. How much effort is needed to set this up in Solution Manager? To monitor availability of simple processes in SAP Portal for instance.

    Best regards,

    Jan Laros

    • Hi Jan,

      even without a full setup of RCA (Root Cause Analysis) you could already start with EEM. Depending on your Solution Manager Version a simple case can be implemented in less than 1 day.
      If there is no RCA implemented the drill down into the components will not work - the backend will be a black box - but you can already see the the client side perspective - like with your existing tool.
      The data can be collected within your BI and you can create reports out of it.

      Best regards, Thomas

      • Hi Thomas

        Thanks for the Doucment.

        1.I am using Solution Manager 7.1 SP3,what are pre-requisites for solution manager and managed system for EEM-setup?

        2.What  file do I need to deploy on solution manager and managed system?and let me know from which step I need to start?

        3.Where do i need to Install this EEM Recorder?

        4.Where do i need to Install EEM Editor?

        I had find this EEM setup in where to install is not mentioned

        Please help me for this question

        • Hi Neni,

          thanks for the response. Hope the following answer are helpful:

          1) The 7.1 Solution Manager do not need any additional installation.

          2) For monitoring and replay of scripts you can reuse the already installed diagnostic agents or install dedicated standalone agents. Basically they are the same but the standalone agents are not related to an SAP installation (like ERP or J2EE-engine). Depending on the OS you will find the installation on the http://service/, see some information in the SAP note 1448655.

          3) The recorder need to be installed on one system, where you record the script. It could be your laptop or PC.

          4) Same as for the recorder. Once the recording is done, import the result into the editor, test and upload the script to Solution Manager.


          • Hi Thomas,

            No words can aptly capture the gift you all have given me by responding immediately 🙂 .

            2) DAA is already installed in my system-How to reuse in EEM(Do you mean- we need to link with EEM some where?)

            5)Is it mandatory to have Managed system for test setup of EEM?

            6) where i need to install EEM editor?will it come with recorder?

            Please let me know if the below steps are sufficient for EEM set-up?

            1. Installing the recorder in the local PC(Where i can get this recoder file from SMP)
            2. Initial infrastructure setup for EEM
            3. Configure diagnostics agents as EEM robots

            ( its there in the like but how to configure this agent as EEM?)

            4.Create an EEM script(or EEM editor)

            5.Uploading the EEM script to script repository

            6.Start the EEM setup again in the SAP Solution Manager: Configuration work center

            7.Create a technical scenario, assign the EEM script to the technical scenario, and upload the EEM script to one or more EEM robots

            8.Parameters changes(is required solution manager recycle?)

            9.Grouping EEM Robots setup

            10.Specifing Thresholds for EEM

            All the steps done in the Solution Manager system expect the 1st one right?

            Thanks in advance.



          • Hi Neni,


            2) Yes. You have to select the agents you want to use in the EEM setup.

              <SAP Solution Manager Configuration> <Technical Monitoring>

              <End-User Experience>, Step 2.6 Configure EEM Robots

            5) If you don't need the full functionality like E2E trace - no.

            Recorder and Editor are needed on a client machine:

              Recording --> Import to Editor --> test and fix the Scripts --> upload to Solution Manager

            They can be downloaded from Solution Manager (same path as before, Step 3.1 Create Scripts. Potentially there could be a newer version on the EEM Wiki, link is also there.

            The list of steps sounds sufficient. There is no restart of Solution manager required.


          • Hi Thomas,

            Some more question:

            1. Where is this EEM robots so called? is this EEM robots are called EEM scripts?
            2. I had find there are 2ways of recording HTML and SAPGUI.In SAPGUI for example if we had recorded VA03 transaction and at the end it is imported to the EEM script-what is the need here to import to EEM Script?(Please give me any example here what is the use?
            3. At the end Uploading to Repository of EEM scripts what is the need here?
            4. As EEM is used to  monitor the availability of the systems, and performance of the connections, from the end user perspective,what is the use of this EEM scripts/recorder

            Please help me with the answers and also if you have and EEM configuration documents please email me.



          • Hi,

            1) a robot is the same as the SMD agent. He replays the scripts.

            2) in the editor, create a project and then import a recording. Such a recording can be a HTML recording or a SAPGUI recording.

            3) Configure the connection from editor to Solution Manager and do a right mouse click on the script (in editor). Then upload

            4) The recorder records the activities you want to replay later on the robots. The editor converts the scripts and prepare them for the upload and later use on the robots.

            Just in case you are interested we have provide an EEM-Workshop for customers. Goal is to teach customers how to use EEM.


          • Hi Thomas,

            Its a great discussion which will help so many customers: 🙂

            4) The recorder records the activities you want to replay later on the robots. The editor converts the scripts and prepare them for the upload and later use on the robots.
            -  It means will EEM robots will do the activates automatically next time when needed OR just It will record  and keep in the repository for reference? 😕

            5)  In this both the cases do we required to do the configurations for  alerts/Thresholds/Parameters changes in Solution Manager system?

            6) I understand EEM is used to find the availability/performance of the systems. in this case what EEM editor/scripts will help the Basis administrator? I think only if RCA is configured, EEM will help the administrator  to check the availability/performance/repots of the systems?





          • 4) They replay the scripts frequntly, based on your configuration in Solution Manager. This is proactive monitoring.

            5) At least you have to assign scrpts to the robots. If you follow the guided procedure you should pass all the steps. Thresholds should be set automatically (initial value).

            6) It helps the admin see issues before somebody complains, he can proactivly solve issues. He will have real measurements for performance and also can compare with the history and compare different locations. E.g if location 1 ist still fast but location 2 is slow the first idea would be an issue with the network.

            RCA is only needed for depper analysis. It shows you the perfomance distribution through different layers and SAP systems. E.g. Client, Network, J2EE server, ABAP Server, Database.


          • Can I assume:

            User 1 created a service desk message in UK location and same has recorded  uploaded in the EEM.

            And User 2 created a service desk message in IND as same time and User 2 is facing problem to create a service desk message.Can EEM complains the issue proactively   ?

            Is it possible to have EGI session on EEM setup ? and I did not find any EEM session available Wiki

          • Hi Neni,

            Yes and No.

            If you have a robot on both locations, replaying the same script, then you will be proactivly informed.

            EEM is using simulated users. It is NOT supoosed to measure real users. One reason real user activities can't compared. You can't be sure that user1 and user 2 are using thesame steps. E.g. if you have a search field user 1 search for "*" and user 2 search for "performance*" user 1 will very likly have a worse performance.

            It is impossible to define SLA's for real user activities. Only simulated users with fixed parameters can be the basis for this.

            YES, EGI's are available.



          • Hi Thomas,

            Thanks a lot, it clarifies almost lot of doubts regarding EEM,

            It is really interesting and helpful answers.

            Still I have 1 small doubt regarding the term EEM Robot, in the guides all were mentioned install EEM robots in the End user host.

            As you previously mentioned we need to install only EEM recorder/editor in the end user host. No additional thing required in solman side too.

            1. so are we calling EEM editor or EEM Recorder as EEM Robot?

            2. If this is the case Do i need to install EEM editor/ recorder for all the end host where i would like to monitor the performance?? why i asking this question is in the document is specified that "Keep the Robots Close to the Client side", means i can instal EEM editor in one end host Labtop( Consider as LAN server), monitor all the user activiy performance of the other system who connected as client.

            Please clarify at your free time.

            Thanks again.



          • Hi Jansi,

            that's are 3 different pieces:

            - EEM_editor and EEM_Recorder are tools for preparation of scripts, only needed on one machine, for the enginier who prepars the scripts.

            - EEM Robot is for the runtime and replays the scripts. You need 1 robot per monitoring location. SMD Agents can be reused but as they are in the data center and do not have the same network pieces between end-user and backend

            ....Do i need to install EEM editor/ recorder for all the end host where i would like to monitor the performance??


            ... in the document is specified that "Keep the Robots Close to the Client side"


            see above


          • Hi Thomas,

            Thanks,  Again I am unclear what is EEM robot then? 🙁

            if EEM robot is the smd agent then how can i install EEM robot per location???

            if EEM robot is the separate XXX ( I still dont knw what is EEM robot)  then how and i get eem robot for per location..

            I am really sorry, if can please give clarification.



          • hi Jansi,

            the robot(s) are connected to the Solution Manager and controled by the Solution manager. The SM holds the lsit of available robots and all the available scripts (uploaded from editor before) in his repository.

            In the configuration of EEM (in SM) you can define which robots should replay which scripts (matrix). The robots should be located on different locations, e.g. the main branches of the company. From there they replay regularly (e.g. every 10min) the prerecorded scripts and measure the performance.

            In the monitoring UI you will see the results of the executions from that places. This works without any end-users, even if they are at home. The scripts will measure proactivly the performance and availability of your system/landscape.

            Hope it helps now. Thomas

          • Hi Thomas,

            1.So the scripts are not created to the SolMan-EEM,will it not show the performance and availability of landscape with the help of RCA?

            2.We do dailymonitoring in CSA task  for this Tx-SM12,13 ST22 and SM37.

            for example we will check how many dumps per day in st22 and note it in CSA task and in SM12 we will check any lock entrys.Can we create a script in EEM and do it automatic data capture for the same Tx?

            3.Can you please tell us the example of what type of scripts most of the customers create?


            4.Robot is  created on the location base if needed and it contains EEM scripts: it is works like SMD agent, If project running from 5 different location do we required to install 5 robots? No? We just create 5 different robots in EEM-please correct me if am wrong



          • Hi Neli,

            1) don't get the question

            2) Yes, but there are other - better tools in Solution manager 7.1. Technical monitoring will show you this information alrready.

            3) Script type: more HTTP than SAPGUI; Content of script, more or less everthing

            4) You don't have to. I depends on what you want to achive with the monitoring. If you want to monitor 5 locations you will need a robot per location.


          • Hi Thomas,

            1) don't get the question-I mean For example if the scripts are not created for any..

            will EEM show's the performance and availability of landscape with the help of RCA in EEM-solution Manager?

            3.Can you please tell us the example of what type of scripts most of the customers create?

            Script type: more HTTP than SAPGUI; Content of script, more or less everthing

            -I mean on what type of business processes or transacations EEM is used by most of the customers?

            Thanks for every thing:)



          • Hi Neni,

            1) For RCA you need to do the activities you want to measure manually, every time when you want to measure. EEM automates this, let's say it's automated RCA. The tools for initiating RCA measurement (on client) and EEM recording are the same. For EEM you can take the recording and automate the measurement by running the scripts frequently.

            3) There are no top usage types. If I go to customers for implementing EEM I always see different cases, e.g. CRM, Portal, HR, GRC, SRM, .... .


          • Hi Thomas,

            1. Finally I had started my configuration on EEM-setup J

            But the first issue I am facing  in 2.4 Configure Automatically- I had executed all

            All the green but Create logical ports and Create Web service Notification users are red

            For - Create logical ports it says: in Display

            This activity creates logical ports for the web service communication between the ABAP and JAVA stack of SAP Solution Manager.

            1.        Start transaction SOAMANAGER.

            2.        Create a logical port for consumer proxy EemAdminVi_Document.

            3.        Enter user credentials, host and URL access path = /EemAdmin/Config1?style=document.

            I did not find create button in SOAMANAGER and what url I have to give in the URL access path?

            Please help me here



          • Hi Neni,

            As this is not the right thread for this, please either:

            1) Open a new thread with the issue (It helps other to find and join the discussion)


            2) Open a message with SAP, provide all system information, log files, perhaps open a system connection.

            Thanks Thomas

          • Hi Thomas,

            Can I monitor non SAP URL's through EEM. For example I record a HTTP script giving a non SAP URL just to check it's availability and  assign a robot to it. Can EEM show the availability of the URL. Could you please clarify?



          • Hi Karthik,

            every http(s) URL can be monitored. The answer is clearly YES.

            The scripting tool doesn't care if the monitored system is an SAP backend or not. The missing functionality in such a setup would be the missing backend monitoring. The great features of root cause analysis would be missing. However even non SAP systems can be included in the backend monitoring in certain cases (if Wily Introscope is in place).

            regards Thomas

          • Hi Jansi,

            Thanks for joining this discussion.

            Your question are help full.

            Can you please give me the Configuration screen short for EEM?