Harald Bender bhbe@de.ibm.com IBM DE Session 508 The zevent Mobile Application
Trademarks The following are trademarks of the International Business Machines Corporation in the United States, other countries, or both. Not all common law marks used by IBM are listed on this page. Failure of a mark to appear does not mean that IBM does not use the mark nor does it mean that the product is not actively marketed or is not significant within its relevant market. Those trademarks followed by are registered trademarks of IBM in the United States; all others are trademarks or common law marks of IBM in the United States. For a complete list of IBM Trademarks, see www.ibm.com/legal/copytrade.shtml: *, AS/400, e business(logo), DBE, ESCO, eserver, FICON, IBM, IBM (logo), iseries, MVS, OS/390, pseries, RS/6000, S/30, VM/ESA, VSE/ESA, WebSphere, xseries, z/os, zseries, z/vm, System i, System i5, System p, System p5, System x, System z, System z9, BladeCenter The following are trademarks or registered trademarks of other companies. Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. Cell Broadband Engine is a trademark of Sony Computer Entertainment, Inc. in the United States, other countries, or both and is used under license therefrom. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. UNIX is a registered trademark of The Open Group in the United States and other countries. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. ITIL is a registered trademark, and a registered community trademark of the Office of Government Commerce, and is registered in the U.S. Patent and Trademark Office. IT Infrastructure Library is a registered trademark of the Central Computer and Telecommunications Agency, which is now part of the Office of Government Commerce. * All other products may be trademarks or registered trademarks of their respective companies. Notes: Performance is in Internal Throughput Rate (ITR) ratio based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput that any user will experience will vary depending upon considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve throughput improvements equivalent to the performance ratios stated here. IBM hardware products are manufactured from new parts, or new and serviceable used parts. Regardless, our warranty terms apply. All customer examples cited or described in this presentation are presented as illustrations of the manner in which some customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics will vary depending on individual customer configurations and conditions. This publication was produced in the United States. IBM may not offer the products, services or features discussed in this document in other countries, and the information may be subject to change without notice. Consult your local IBM business contact for information on the product or services available in your area. All statements regarding IBM's future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only. Information about non-ibm products is obtained from the manufacturers of those products or their published announcements. IBM has not tested those products and cannot confirm the performance, compatibility, or any other claims related to non-ibm products. Questions on the capabilities of non-ibm products should be addressed to the suppliers of those products. Prices subject to change without notice. Contact your IBM representative or Business Partner for the most current pricing in your geography. 2
The zevent Mobile Application And what about critical events and z/os performance monitoring on mobile devices? 3
The zevent Mobile Application Receive push messages based critical system events Access to z/os performance data from mobile devices Single point of control for the enterprise Developed with IBM Mobile First Studio Prototype status (Android OS) Current availability target is 1Q 2016 Supported Monitoring Facilities: RMF Performance Data Portal z/osmf Resource Monitoring 4
Content Overview Basic Idea Components and Flow Administration Using the zevent App Getting Started Push Server Setup Configuration and Settings Inbound Functions Events Snapshots Outbound Functions RMF Performance Data Portal z/osmf Resource Monitoring Launch in Context Event Generation with RMFM3B Live Demo 5
Idea Solution and Scenario Provide a system programmer with the means to get immediately notified when an important event occurs to check major system indicators to decide whether the event requires immediate attention Solution Mobile app which receives event notifications z/os back end to send events and manage participants 1. System Programmer/Administrator: Not at workplace 2. Event happens on mainframe, e.g. Defined Capacity Limit reached or performance stalls 3. Alert is generated by MPF, CPM, RMF, SA etc and send via push notification to mobile phone 4. Solution allows to check back status/additional information from mobile phone to mainframe 5. Then take action (at workplace) or classify status as uncritical 6
zevent Components Push Notification Registration Push Services Mobile App Event Generation Setup Setup Access to RMF Data Portal z/osmf RM z/os Host User Administration Monitoring Products Admin System Administrator 7
zevent Components Mobile Application z/os host system Push server zevent consists of three parts The mobile application which displays events, snapshots and which allows to access monitoring functions on z/os z/os host system which provides user administration, a mechanism to recognize and send important events to the push services, and monitoring tools which can be accessed to further analyze system status Push services which are open services to deliver notifications to registered end user devices 8
zevent Complete Flow 7. Send Notification 2. Register Push Server 1. Setup 4. Send to Administrator 3. Client Id 7. Send Message 5. User Admin; Event Mngmt User Admin 6. Generates SysREXX (Filter) Calls MPF Exit Message 9
zevent Complete Flow Encrypted message flow to guarantee secure message delivery One of the most important aspects of zevent is secure message delivery All events and snapshots can be encrypted on the z/os host The decryption takes place at the mobile devices Events and snapshots which are saved on the mobile device are encrypted by a master password Used encryption: AES-128, -192, or -256 Registration Mobile devices connects to push server and retrieves an authentication id The authentication is sent to the z/os (zevent) system administrator who adds the user to zevent and assigns it to user groups 10
Event Generation from WTO Sample Exit Module System REXX Library Concatenation /*-------------------------------------------------------------------*/ /* MESSAGES FOR ZEVENT */ /*-------------------------------------------------------------------*/ IEA404A,SUP(NO),USEREXIT(MPF4REXX),AUTO(ZEVENT) WTO BUFFER SHORTAGE RMF305I,SUP(NO),USEREXIT(MPF4REXX),AUTO(ZEVENT) MSU CONSUMTION ALERT AXREXX REQUEST=EXECUTE,SYNC=YES,NAME=ZEVENT,REXXARGS=(n) zevent origin(mpf) system(mvs1) msgtype(s) longmsg( message text ) Push Server 11
zevent The REXX API Type Call Result minimal zevent msgid (rmf305i) zevent db origin(db) category(db) color(db) system(rexx: system) time(rexx: time()) message(db) longmsg(db) receiver(db) userdata(db) appdata(db) MPF zevent origin(mpf) system(mvs1) msgtype(s) longmsg( this is the long message text ) maximal zevent origin(sa) category(1) color( #66FF00) system(mvs1) time(14:10:00) message( short message ) msgtype(s) longmsg( this is the long message text ) receiver(admins) userdata({ key1 : val1, key2 : val2 }) appdata({izur": {"dashboard": "Performance Index"}}) 12
zevent Administration The event administration provides the following functions: User and Group definition Rules definition Event attribute definition The following parts are generated: REXX procedure Stub for MPFLSTxx parmlib member generated REXX lib zevent REXX notifies notifies invokes MPFLSTxx installed Linklib zevent MPF exit calls IEA404A zevent exit generated message 13
Content Overview Basic Idea Components and Flow Administration Using the zevent App Getting Started Push Server Setup Configuration and Settings Inbound Functions Events Snapshots Outbound Functions RMF Performance Data Portal z/osmf Resource Monitoring Launch in Context Event Generation with RMFM3B Live Demo 14
zevent App Startup Start: Splash Screen Events: Always shown after Startup Settings: Show/Hide Tabs Connect to Push Server Connect to Monitors 15
zevent Registration 5 1 4 3 2 ❶ The first required step is to connect to the push server ❷ Connection information can be provided by a QR code which can also be created by the Mobile App ❸ After scanning the QR code, the connection information is filled into the push settings display ❹ Pressing the Connect button sends a message to the push server to retrieve the authentication key ❺ The key is also displayed in the settings dialog 16
zevent Push Server Connection 6 8 5 6 7 ❺ Registration is required when the application is installed and used for the first time and after each re-install ❻ The application checks whether the registration key has changed and if yes it provides a dialog to send the authentication information to the system administrator ❼ The user can select the email program and the connection information is entered in JSON format ❽ After pressing the SEND button the information is on its way 17
Tabs and Dialogs Events For the first time Filled with events Pressing on an event allows to display message details Pressing on the details shows a pop-up dialog to go to RMF, z/osmf RM or to delete the events 18
Tabs and Dialogs Tab Selection The Events tab is the main tab and it is always present All other tabs can be configured based on need and functions which should be exploited Snapshot: to display graphical information which also receives as push notifications RMF: accesses the RMF data portal to display RMF performance data z/osmf RM: accesses z/osmf to display RMF performance data Note: The information on RMF and z/osmf can be redundant and the option is simply provided as a user s choice 19
Tabs and Dialogs Snapshot Snapshots are performance information which are displayed as graphical charts Provide important analysis information immediately with an important event on a regularly basis without requesting the user to pull the information The usage is the same as on the Events tab: The occurrence of a snapshot or chart is signaled as an event Clicking on the event displays the chart A chart can be manipulated (zooming) or deleted 20
Snapshot The Idea Key metrics on the z/os systems are monitored continuously by the zevent provider The provider maintains a chart document in JSON format The values are retrieved for each interval and appended to the chart A push message with the chart as payload is sent to the zevent app The App receives the JSON document and visualizes the chart graphically The user of the zevent app is instantly notified and can analyze the metric trend {"registration_ids" : ["APA91bEEaqiSVnuSNZjwrfCK0WWvb28RpCJn _nlwommuej0lqwejhkwa3lgl1glpc8x5kn7vj1yttu43s2j0fnwsdajlq7fs p9qiba_nsguuxwlft1fjn4cldq6gccutmcjkieytwk2a"],"data" : {"ch arts" : [{"sys" : "SYS2","time" : "17:53:44","title" :"CPU C onsumption","xaxis" : {"title" : "Time (h)","label" : [1,2,3,4,5,6,7,8,9,10,11]},"yaxis" : {"title" : "MSU"},"series": [ {"title" :"CPU1","type" :"Lines","markers":false,"color" :"#6656756A","values" :[17,22,17,21,4,21,8,5,1,6,21]},{"tit le" :"CPU2","type" :"Lines","markers":false,"color" :"#6 6A48E24","values" :[24,29,20,15,21,30,6,17,28,18,9]}],"usr" {"Date":"15/04/28","Time":"17:30:00"}}]}}. 21
Tabs and Dialogs RMF & z/osmf RMF and z/osmf allow the mobile user to logon to the z/os system and to obtain additional information to further analyze a performance event RMF accesses the RMF performance data portal z/osmf accesses z/osmf RM 22
zevent RMF Performance Data Portal The RMF Performance Data Portal appears on the RMF tab when the following URL is specified with the connection profile: http://hostname:8803/gpm/root.xml From the primary screen the user can now navigate to any preferred metric 23
zevent z/osmf Resource Monitoring The z/osmf Resource Monitoring Dashboard list is displayed on the z/osmf tab when the following URL is specified with the connection profile: http://hostname:443/zosmf/izur The user can now open the preferred Dashboard 24
Tabs and Dialogs Connection In order to access the z/os system it is necessary to provide A free selectable label The URL for RMF resp. z/osmf Timeout value in milliseconds Userid and password 25
Tabs and Dialogs Connect A connection can be established by the mobile user Pressing the connection entry and then Connect The mobile device accesses the z/os system If the connection succeeds the connection entry is displayed in green (if not in red) A connection can also be established under the cover from an event or snapshot entry for the system from which the event or snapshot was sent Assuming a connection entry is defined for that system 26
Launch in Context RMF DDS Metric 27
Launch in Context RMF Monitor III Report 28
Launch in Context RMF Postprocessor Report 29
Launch in Context z/osmf Dashboard 30
Content Overview Basic Idea Components and Flow Administration Using the zevent App Getting Started Push Server Setup Configuration and Settings Inbound Functions Events Snapshots Outbound Functions RMF Performance Data Portal z/osmf Resource Monitoring Launch in Context Event Generation with RMFM3B Live Demo 31
Event Generation RMF Monitor III Batch RMFM3B PROC REPORT=CPC, HLQ= PGM=IKJEFT01 Batch TSO PARM = ERBM3B &HLQ &REPORT Initalization Procedure UserId Monitor III Report Type Monitor III Main Module Hardcopy GO Mode 32
RMF Monitor III Batch Phase III Samples RMFM3B PROC RMF=SYS1,ISPF=SYS1 //SYSPROC DD DISP=SHR,DSN=&HLQ..RMFM3B.SERBCLS // DD DISP=SHR,DSN=&RMF..SERBCLS // DD DISP=SHR,DSN=&ISPF..SISPEXEC // DD DISP=SHR,DSN=&ISPF..SISPCLIB Use this library for modifications of the RMF supplied procedures Depending on the report type the generic exit module ERB3RPH3 passes control to the RMF supplied specific report exit modules ERB3RPH3 ERBR3WFX ERBR3SYS ERBR3CPC 33
RMF Monitor III Batch Phase III Samples And what the hell does now the specific report exit for me? Depending on the report type various default actions are provided. All default actions are associated with a console message. ERBR3WFX Counts the number of exception lines from the WFEX report and issues a console message which displays the number of exceptions ERBR3SYS Checks whether the total CPU utilization is higher than 90%. If yes, issues a console message which displays the actual CPU utilization ERBR3CPC Checks whether WLM initiated capping (softcap) is currently active. If yes, issues a console message which displays the current capping %. If no, issues a console message which displays the remaining time until potential softcap starts 34
RMF Monitor III Batch Phase III Samples ERBR3WFX Counts the number of exception lines from the WFEX report and issues a console message which displays the number of exceptions Routes all exception lines from the WFEX report unchanged to the console ERBR3SYS Checks whether the total CPU utilization is higher than 90%. If yes, issues a console message which displays the actual CPU utilization Checks the response time for a specific WLM group agains a user specified threshold. Issues a console message which displays the actual response time in case the threshold is met ERBR3CPC Checks whether WLM initiated capping (softcap) is currently active. If yes, issues a console message which displays the current capping %. If no, issues a console message which displays the remaining time until potential softcap starts Checks the MSU consumption of all LPARs against a user specified threshold. Issues a console message with the actual MSU consumption for the LPARs that are exceeding the limit This action performs a scan of the report table header This action performs a scan through all report table rows Checks the system wide CPU utilization as well as the ECSA usage against user specified thresholds. Issues a console message which displays the actual values in case the thresholds are met n/a n/a 35
Example ERB3RSYS Action 1 I would like to see a console message if one of my LPAR s exceeds a certain MSU limit ERBR3CPC /* Partition Data Entry fields ***************************************/ /* */ /* pdt.0.1: Partition names */ /* pdt.0.2: MSU Limits for WTO */ /* */ /*********************************************************************/ pdt.0.1 = "MVS1 P01 MVS2 P02 MVS3 P11 MVS4" P12 /* <== adjust partition names */ pdt.0.2 = "00010 "00100 00010 00080 00010 00040 00010" /* <== and the MSU limits */ $HASP373 BHBEM3B STARTED - INIT 1 IEF403I BHBEM3B - STARTED - TIME=15.15.31 +RMF300I 3B: Processing CPC Report... +RMF304I 3B: MSU Consumption of critical LPARs: +RMF305I 3B: P01 : 172 (WTO Limit: 100) +RMF305I 3B: P02 : 124 (WTO Limit: 80) +RMF300I 3B: Processing CPC Report... +RMF304I 3B: MSU Consumption of critical LPARs: +RMF305I 3B: P01 : 145 (WTO Limit: 100) +RMF305I 3B: P02 : 99 (WTO Limit: 80) +RMF305I 3B: P12 : 11 (WTO Limit: 10) +RMF300I 3B: Processing CPC Report... +RMF300I 3B: Processing CPC Report... +RMF300I 3B: Processing CPC Report... +RMF304I 3B: MSU Consumption of critical LPARs: +RMF305I 3B: P12 : 14 (WTO Limit: 10) filter = 01 /* <== set to 1 for filtering */ lparnum = 0 "TBQUERY" tabnam "ROWNUM(lparnum)" Adjust the partition names and the MSU limits Now start the Monitor III Batch Reporting Session ERBM3B 36
RMF Monitor III Batch References www.ibm.com/systems/z/os/zos/bkserv/v2r1pdf/#rmf RMF Users Guide, Chapter 21. Client Server Enabling ftp://public.dhe.ibm.com/eserver/zseries/zos/rmf/rmf2wto.pdf 37
Content Overview Basic Idea Components and Flow Administration Using the zevent App Getting started Push Server Setup Configuration and Settings Inbound Functions Events Snapshots Outbound Functions RMF Performance Data Portal z/osmf Resource Monitoring Launch in Context Event Generation with RMFM3B Live Demo 38
The zevent Mobile Application Summary Receive push messages based critical system events Instant access to z/os performance data from mobile devices Single point of control for the enterprise Launch in context provides additional value Quick entry to monitoring facilities through automated login Representation of the data is well suited for mobile devices RMF Performance Data Portal with individual Metric views z/osmf Resource Monitoring Dashboards are arranged vertically 39