General
What kind of user authentification is supported for EEM Scripts?
EEM supports HTTP basic authentification, certificate based authenifications as well as NTLM autentification.
www-authenticate: Negotiate (SPNEGO) is supported for both Kerberos and NTLM as of Solution Manager 7.1SP12 and 7.2SP03.
Which protocols are supported for EEM Scripts?
Currently http/https, SAPGUI, RFC, and Webservice EEM Scripts are supported. A mixture of different protocol types in one script is not possible.
Which client applications are supported for recording scripts?
HTTP scripts can be created by recording from a browser session by using the "EEM recorder mode" of the SAP Client Plugin (called EEM Recorder in this mode). Only Microsoft Internet Explorer is supported for EEM recording. More details on the currently supported browser versions and operating systems are mentioned in note 1435190. Note that other clients supported by the SAP Client Plugin for E2E Trace are typically not supported for EEM recording.
RFC scripts can be recorded from the "Business Explorer" (BEx) via the EEM Recorder. See also HowTo section EEM_Scripts_for_RFC.
SAPGUI scripts are recorded using the built-in recording functionality of SAPGUI for Windows. See also HowTo section SAPGUI Scripting.
In addition all types of scripts can be created manuall from scratch, e.g. using wizards in the EEM Editor.
Does my installed SMD agent for Diagnostics in Solution Manager act as EEM Robot?
The SMD Agents in the use-case of a Diagnostics Agent for root cause analysis could do the job of a EEM Robot, too. This setup may only be useful for test purpose. For a productive End User Experience Monitoring Infrastructure it is recommended to install a standalone SMD Agent as EEM Robot close to the real end users to be able to get monitoring data from their perspective.
Is an EEM Robot a new species beside the existing SMD Agent?
EEM Robots are a re-use of the well introduced SMD Agent technology. From a technical point of view a EEM Robot is an Application (Aglet) running on an ordinary SMD Agent. A difference maybe the location of the EEM Robot. While a SMD Agent used for "Diagnostics in Solution Manager" is situated close to the back-end, the EEM Robot runs close to the client-side/end-user in a SAP landscape.
Can I use single EEM robot at one site to observer end user's experience for multiple SAP systems(like ECC, BMP, BWP etc) from that site?
Yes, a single Robot can execute several different EEM Scripts against different productive SAP Systems. Of course the network configuration and firewall settings have to allow the contact between EEMRobot and Server.
Is the EEM integrated in Root Cause Analysis?
It is the other way round. SAP End-User Experience Monitoring benefits from the integration of the E2E trace Analysis and its SAP Passport Technology in the EEM work flow.
To point it out shortly: EEM uses the Root Cause Analysis but is much more than that due to the pro-active character of EEM.
Why do I need a technical scenario for EEM.
A technical scenario of type End User Experience (END_USR_EX) is required for full integration of interactive reporting, Root Cause Analysis and Workmode management. See also Technical_Scenarios
Does EEM support Citrix? Are EEM Robots able to handle Citrix Sessions?
As background please consider the image below: The end-user runs the Citrix client on his desktop. This client communicates via the TRDP protocol to the Citrix server / Windows Terminal Server. On this server the actual application like SAP Gui or the browser is executed. The communication protocol between the application running on the Citrix server (and being displayed in the Citrix/WTS client) is then typically http or the SAP Gui protocol.
EEM does not support the Citrix/RDP protocol and an EEM Script cannot execute actions that are accessed via the citrix protocol. But you can put an EEM Robot close to the Citrix Farm to monitor if the farm is able to access the SAP backends with a good performance therefore regard Citrix as a "looong monitor cable". On one hand a performance issue between the end user and the citrix farm cannot be monitored with this setup. On the other hand it is helpful to know that the issue is neither between Citrix farm and SAP nor inside the SAP landscape.
Is EEM meant to be a loadtest tool?
No, it is designed to monitor a landscape from end-user perspective with a minimized impact on the landscape itself.
What Users are used for running EEM/UXMon scripts and what about licensing for that users?
The EEM/UXMon robots act in the system landscape like real users.
To get a realistic end-user experience the user's roles and profiles mustn't differ from real human users.
The only exeption is the licensing aspect: As the users used by EEM/UXMon have a technical character they are free of charge in all cases (but for Cloud applications).
Flag them as "Test" like shown in image below.
However if possible it is recommended to use service users to avoid regularly password changes. To ensure that script replay with a service user is working correctly it should be recorded already with a service user.
Important: Be aware that Dialog Users and Service Users have a different behaivior. Sometimes scripts will not work properly if you use a Service User. Note 1322944 could be interesting in case of issues with SSO ticket.
Which DB growth is expected when using EEM?
DB space depends on number of executions and if system data or traces are collected. The required space for each script execution can be estimated as 250 bytes + #Steps * 300 bytes. A script with 10 steps needs in average 3 Kbytes.
When system time is collected you can double the size. Additionally in JAVA schema each execution needs approximately 20Kbytes per execution. When the script is executed with trace flags (e.g. by setting temporary configuration) the size can increase depending on trace level and persisted traces up to Mbytes.
Therefore it is really recommended to check that housekeeping jobs are running correctly. See also the chapter about Housekeeping.
I use Central User Administration and cannot use the automatic creation of users during EEM Setup. What I need to do for CUA and EEM?
Basically you need two users in Solution Manager 7.01:
A dialog user is used for WebDynpro application and for communication from EEM Editor to EEM Repository. The User needs the Role Z_EEM_ADMIN or Z_EEM_DISP or a copy of it.
A communication user is used by EEM Robots to send the notification about a performed EEM script execution to SAP Solution Manager. The communication user needs role SAP_BC_WEBSERVICE_SERVICE_USER. You can create the user before EEM Setup and assign the role via CUA.
Be Careful
You need to set the password during EEM Setup to be able to forward the logon credentials to EEM Robots
With Solution Manager 7.1 all required users can be created out of guided procedure for EEM setup. If you need to build up own roles or use CUA please refer SP corresponding Solution Manager Security Guide which will provide all information what's inside SM_EEM_CONF_COMP and L1 and L2 role.
Is it necessary to activate parameter sapgui/user_scripting in RZ10/RZ11 for script execution by EEM Robots all the time?
Yes, to replay SAPgui-based EEM Scripts the scripting parameter has to be activated on the system. In some cases it is not possible to enable SAP GUI Scripting for lack of a dedicated application server. This implies that users who are allowed to use SAP GUI Scripting work on the same server as others, so the support cannot be enabled for the server. The problem can be solved by setting the rights to run SAP GUI Scripting per user. As in the previous chapter the profile parameter sapgui/user_scripting needs to be set to “TRUE”. The new profile parameter sapgui/user_scripting_per_user allows the administrator then to enable SAP GUI Scripting support for specific users. Unless the administrator explicitly changes the value, this parameter is set to “FALSE”. If the profile parameter is set to “TRUE” the following happens:
- On the login screen SAP GUI Scripting is available for every user.
- After login SAP GUI Scripting only remains available for those users that have the authorization for the Execute(16) action of the authorization object S_SCR in class BC_A.
The following software versions are required to use this new functionality:
SAP GUI for Windows
- 6.40: Patch 22 and following
- 7.10 and following
SAP System
- 6.40: Kernel 6.40 patch level 159, support package SAPKB64020
- 7.00: Kernel 7.00 patch level 87, support package SAPKB70011
- 7.10 and following.
How much network traffic is generated by EEM robots?
The network traffic depends on the type and number of scripts deployed to the robot and the frequency of script execution:
- In general, every script execution triggers a result notification to Solution Manager. Data volume for this is in the range of 1kB.
- SAPGUI and RFC scripts trigger the same amount of traffic as in "real" execution.
- HTTP scripts may be very sensitive to modifications. In particular, the following two aspects are relevant:
- Compression: Double check that the responses are compressed by looking at the response header
content-encoding
- Static resources: Make sure that static resources (images, javascript, style sheets) are handled in the same way as for an end user in the browser. Typically these resources are cached in the browser and thus should be deactivated in the EEM script.
- Compression: Double check that the responses are compressed by looking at the response header
You can check the exact data volume in the EEM Editor looking at the replay. For each message bytes sent/received is reported.
Security: When we provide logon information (passwords) in the script configuration and in the Solution Manager connection: Where is it stored? What encryption algorithm is used?
Which roles are required when using the monitoring tools in Solution Manager?
As all other technical monitoring use cases EEM has three different kind of roles for configuration, first level support (L1) and second level support (L2). More details about these roles can be found in the Security Guide
SAP_SM_EEM_CONF
This role is required for all configuration tasks of EEM in SOLMAN_SETUP as well as uploading roles from the EEM Ediotr to the EEM Repository.
The role can be assigend or a dedicated user with this role can be created in SOLMAN_SETUP -> Basic Configuration -> Create Configuration user (Step 8).
SAP_SM_EEM_LEVEL01
This role is required for using the EEM Monitoring UI or the Alert Inbox. With this role the user has just display authorizations. It is not possible to trigger any trace in the Monitoring UI or confirm an alert in the alert inbox.
The role can be assigned or a dedicated user can be created in SOLMAN_SETUP -> Technical Monitoring -> End-User Experience -> Standard Users (Step 7).
SAP_SM_EEM_LEVEL02.
This role is required for using the EEM Monitoring UI or the Alert Inbox. With this role the user can trigger an extra execution (with trace) in the Monitoring UI or confirm an alert in the alert inbox.
The role can be assigned or a dedicated user can be created in SOLMAN_SETUP -> Technical Monitoring -> End-User Experience -> Standard Users (Step 7).
Infrastructure
What are the prerequisites to run an EEM Robot on a system?
The prerequisites are derived from the underlaying Diagnostics Agent. Diagnostics Agent installation guidance is available in SAP Note 1365123.
Some special requirements for EEM are:
- To execute SAPGUI scripts an installed SAPGUI is needed on the EEM Robot's host.
What is the recommended number of EEM Robots for an EEM Environment?
It is recommended to install one EEM Robot per important business hotspot.
Which connections are used for communication in the field of EEM?
Direction EEM Robot -> SolMan
- P4 Port of Solmans Java Stack (5xx04; with xx=Systen Number)
- HTTP Port of solmans ABAP Stack
- optional RMI or HTTP Port of a Wily Enterprise Manager (default 6001 + 8081)
Direction SolMan -> EEM Robot
- no connections in this direction
Monitoring
Why are some script executions displayed in the monitoring UI with bold letters?
The style how script executions are displayed indicates whether detailed system data or traces are available. Bold written executions means system data has been collected. System data is read by E2E Trace application in form of statistic records. There is no overhead during script execution. Statistic records are written be default for each dialog step for ABAP systems. For SAP J2EE engine only if tracing has been enabled. See also What is required to get detailed times of system components in EEM Monitoring UI?
Italic written script executions means the script execution contains trace flags (>0) which might have an impact on response time. See also What is required to get E2E Traces from EEM Monitoring UI?
Bold Italic written script execution means script execution contains trace flags (>0) and Trace data has been collected.
What is required to get E2E Traces from EEM Monitoring UI?
For ABAP and SAP J2EE systems
There are two possibilites to get E2E Traces from the EEM Monitoring UI of a tuple of EEM Script and Robot as shown in the image below:
Run Script with trace
This option triggers an additional immediate execution with the trace level configured in the Admin UI under the tab UI configuration.
Set Temporary configuration
This option will set the trace level for the scheduled executions in the time frame that is configured in the Admin UI.
Both options will enable the trace if user has authority before executing the script.
To get the E2E Trace integration working you need:
- Ensure that E2E Trace is working for the recorded script(i.e. Root Cause Analysis and Managed System setup must be executed before) .
- The system(s) you want to collect the traces for must be connected to SAP Solution Manager and setup must be executed.
- The involved systems must be associated with the script
- Solution Manager 7.01: The involved systems must be entered in the admin UI under the scripts tab in the column Involved Systems as a comma separated list (e.g. CRP,BWP).
- Solution Manager >=7.1: The involved systems must be assigned to a technical scenario. This scenario is then assigned to the script. Both steps are performed in the EEM setup guided procedure.
- The extractor for these involved systems must be scheduled. This is automatically scheduled when the scenario is created or can be done manually in the SOLMAN_SETUP step 3.2 (Maintain Scenario).
Hint: The term Involved Systems is just a group of systems and starting with Solution Manager 7.10 it is named Technical Scenario.
Remark: For SAPGUI scripts you just get statistical data but no detailed traces like SQL Trace.
For other components writing Introscope transaction traces
Other components that are writing Introscope transaction traces (like Tomcat, BOBJ, SMP,...) do not need a trace enabling. They react on flags in the SAP Passport. When flag/bit 7 is set (representing the decimal value 128) the transaction trace is send to the Introscope Enterprise Manager from where the E2E Trace application can collect them.
As a consequence if transaction traces should be collected permanently for the EEM script the property trace.e2etracelevel should have the value 128.
What is required to get detailed times of system components in EEM Monitoring UI?
In general the prereqisites as mentioned above in What is required to get E2E Traces from EEM Monitoring UI? must be fullfilled.
For all scripts executed against a SAP J2EE engine tracing must be enabled for a given time frame. Either or with 'Run script with trace' or 'Set temporary Configuration'. The time frame itself can be maintained in the eem_admin application on tab 'UI configuration' (for Solution Manager 7.01) or via the monitoring UI -> Button Administration -> Temporary Configuration. See also Troubleshooting: Missing System data or traces
Why show HTTP scripts executed by EEM Robots sometimes higher / different response times in comparison to a manual execution of the business transaction in a browser?
There a several possible reasons for this behavior:
- The EEM script may still contain static requests to download graphics or stylesheets while the browser has these objects in the local cache. If browser caching is enabled on end user PCs we recommend to disable those cached requests in the EEM script. Hint: Execute the complete business transaction once with the same browser before you record it in the EEM recorder. During recording the cache will then be filled as in real live. When importing the recording to the EEM editor it will activate exactly those messages which were not handled by the browser cache.
- The EEM robot uses one HTTP connection, some browsers like IE8 up to 8 parallel HTTP connections per default.
- Some browsers start rendering before all data is transfered completely. The EEM robots exactly measures the start and end point of the data transfer.
- An effect in the opposite direction (lower response times in EEM) is caused by the fact that EEM does not render the http responses and does not process the Javascript code.
In general it is not a good idea to compare manual tasks with EEM Robot activities. The good news is that EEM results are comparable under each other, showing extreme low deviations.
Alerting
Is there an alerting for the EEM Performance and EEM Availability?
EEM is fully integrated into the alerting infrastructure of SAP Solution Manager 7.1.
How is a EEM status propagated to an alert? What does best-case or worstcase mean?
Progagation of EEM status is explained in a separate page. See Alert Propagation Page for details
Is it possible to suppress yellow alerts?
Starting with SAP Solution Manager 7.1 SP09 it is possible to suppress yellow alerts.
As a work-arround you can increase the thresholds to avoid these yellow alerts.
What is the meaning of the severity levels for alerts?
Each alert in Monitoring and Alerting Infrastructure has a severity which influences the alert priority in the alert inbox. See also SysMon FAQ 07.
Because it is not possible to change this severity value it was decided to hide it. Starting with Solution Manager 7.1 SP10 it looks like:
The name of the alert has also be changed from 'Propagation from Script-Execution to Script' to 'EEM Script ... Alert'. This has no impact on the alert calculation but in the notification the alert name is now displayed in contrast to the technical event name.
Reporting
Is reporting for EEM available?
EEM is fully integrated into the monitoring infrastructure of SAP Solution Manager 7.1.
How is an execution propagated to SLA status reporting?
The propagation especially in the "Best Child" case is explained on this page in detail.
5 Comments
Former Member
It would benefit if the moderator adds some comparision between 3rd party products such as CA CEM with EEM.
Former Member
Does EEM leverage Incident management of Solution manager?
Former Member
¿How could I change the region, country and location of existing EEM robots?
Marc Arnold Bach
Hi,
you can change this in /nSolman_Setup => Technical Monitoring => EEM => Step 2.x
Martin Kadner
Hello Marc,
i would like to use one "simple" Authentication measure for SAPGU and HTTP with EEM Scripts. Requirement is only to avoid sending non encrypted pw.
Does Windows NT LAN Manager (NTLM) Authentication work for both SAPGUI/DIAG access to ABAP Application Server and for WebDynpro ABAP and Java Application.?
While its recommended by SAP docu - outside the EEM space - to use "Kerberos for SAP GUI Authentication for system environments consisting of Microsoft Windows 2000 and higher"
SAP Single Sign-On 2.0 supports for Secure Login with Windows-based Kerberos tickets that authenticates users into the SAP software through a Webbrowser or Windows-based SAP GUI. It that supported with EEM Scripts? Will it work?
Thanks Martin