SlideShare ist ein Scribd-Unternehmen logo

Monitoring von SAP mit check_sap_health

Monitoring von SAP mit den bisher vorhandenen Plugins beschränkte sich auf die Abfrage von CCMS-Metriken. In einem SAP-System steckt aber noch viel mehr, das sich überwachen lässt. Check_sap_health ist ein neues Plugin, welches in Perl geschrieben wurde. Es entstand in einem Projekt, bei dem von unterschiedlichen Standorten aus die Laufzeiten von BAPI-Aufrufen gemessen werden sollten. Durch die einfache Erweiterung des Plugins um selbstgeschriebene Perl-Elemente lassen sich beliebige Funktionen per RFC aufrufen und somit firmenspezifische Logik implementieren.“ Vortrag gehalten beim Workshop der Open-Source-Monitoring-Community 2014 in Berlin.

1 von 33
Downloaden Sie, um offline zu lesen
Wir unternehmen IT.
Monitoring von SAP mit
check_sap_health
Gerhard Laußer
ConSol* Software GmbH
Monitoring-
Workshop 2014
Seite
Warum ein weiteres/neues SAP-Plugin?
Weil
 ich meine Plugins kontinuierlich weiterentwickeln/vereinheitlichen will
und deshalb Perl für mich besser ist als C. (GLPlugin.pm)
 ich Anforderungen schnell umsetzen will und das mit einer
Scriptingsprache schneller geht als mit Compiliererei.
 sich die „Plugin im Plugin“-Methode bewährt hat. (--mode my-zeugs)
 ich Performancedaten will.
17.05.2014 www.consol.de2
Seite
Warum ein weiteres/neues SAP-Plugin?
Weil
 das uralte check_sap bei einem Kunden gecoredumpt hat.
(_nicht_ das Netways-Plugin. Das ist saubere Arbeit, aber leider C)
 /etc/sapmon/{agent,login,moni_tr}.cfg Gefrickel ist. (Und außerdem
nicht zu gekapselten OMD-Sites passt)
 Anforderungen in Richtung End2End/Businesslogik nicht zu einem
starr kompilierten Plugin passen. (viel zu kundenspezifisch)
 CCMS nur ein Teilaspekt ist und ich mit BAPI-Monitoring Neuland für
Nagios erobern will. (Betriebswirtschaftliche Sicht)
 das Plugin auch auf Windows laufen soll.
 jemand für die Entwicklung bezahlt hat.
17.05.2014 www.consol.de3
Seite
Runterladen, bauen, installieren
$ git clone http://github.com/lausser/check_sap_health
$ cd check_sap_health
$ autoreconf
$ ./configure
$ make
$ cp plugins-scripts/check_sap_health 
$OMD_ROOT/local/lib/nagios/plugins
17.05.2014 www.consol.de4
Seite
Perl-Modul sapnwrfc
$ cd /tmp
$ SAPCAR -xf NWRFC_20-20004565-Linux-x86_64.SAR
--> erzeugt /tmp/nwrfcsdk
$ perl -MCPAN -e "install sapnwrfc"
…
No libsapnwrfc installation found, usually in /usr/sap/nwrfcsdk
Which libsapnwrfc build path do you want to link against? /tmp/nwrfcsdk
$ cp libicudata.so.34 libicudecnumber.so libicui18n.so.34 libicuuc.so.34 
libsapnwrfc.so libsapucum.so $OMD_ROOT/local/lib
17.05.2014 www.consol.de5
Seite
Berechtigungen für den Monitoring-User
17.05.2014 www.consol.de6

Recomendados

Open-Source-Monitoring von Netzwerkkomponenten mit check_nwc_health
Open-Source-Monitoring von Netzwerkkomponenten mit check_nwc_healthOpen-Source-Monitoring von Netzwerkkomponenten mit check_nwc_health
Open-Source-Monitoring von Netzwerkkomponenten mit check_nwc_healthGerhard Lausser
 
OSMC 2021 | SNMP Monitoring mit Prometheus / OIDs dynamisch auswählen und im ...
OSMC 2021 | SNMP Monitoring mit Prometheus / OIDs dynamisch auswählen und im ...OSMC 2021 | SNMP Monitoring mit Prometheus / OIDs dynamisch auswählen und im ...
OSMC 2021 | SNMP Monitoring mit Prometheus / OIDs dynamisch auswählen und im ...NETWAYS
 
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebOSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebNETWAYS
 
Keepalived & HA-Proxy as an alternative to commercial loadbalancer - August 2014
Keepalived & HA-Proxy as an alternative to commercial loadbalancer - August 2014Keepalived & HA-Proxy as an alternative to commercial loadbalancer - August 2014
Keepalived & HA-Proxy as an alternative to commercial loadbalancer - August 2014inovex GmbH
 
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus ThielOSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus ThielNETWAYS
 

Más contenido relacionado

Was ist angesagt?

Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Florian Holzhauer
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataGunther Pippèrr
 
Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...
Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...
Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...NETWAYS
 
Infrastructure as code: Cloud-Umgebungen mit Terraform verwalten
Infrastructure as code: Cloud-Umgebungen mit Terraform verwaltenInfrastructure as code: Cloud-Umgebungen mit Terraform verwalten
Infrastructure as code: Cloud-Umgebungen mit Terraform verwalteninovex GmbH
 
Performance durch Caching
Performance durch CachingPerformance durch Caching
Performance durch CachingAOE
 
Der oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerterDer oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerterGunther Pippèrr
 
Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...
Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...
Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...Trivadis
 
Rex - Infrastruktur als Code
Rex - Infrastruktur als CodeRex - Infrastruktur als Code
Rex - Infrastruktur als CodeJan Gehring
 
German Perl Workshop 2015 - Infrastruktur als Code
German Perl Workshop 2015 - Infrastruktur als CodeGerman Perl Workshop 2015 - Infrastruktur als Code
German Perl Workshop 2015 - Infrastruktur als CodeJan Gehring
 
Entwicklungsumgebungen mit Vagrant
Entwicklungsumgebungen mit VagrantEntwicklungsumgebungen mit Vagrant
Entwicklungsumgebungen mit VagrantB1 Systems GmbH
 
Title is loading ... Cache is cold.
Title is loading ... Cache is cold.Title is loading ... Cache is cold.
Title is loading ... Cache is cold.QAware GmbH
 
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterRsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterDésirée Pfister
 
Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Josef Adersberger
 
Sicheres Root-Server Hosting mit Linux
Sicheres Root-Server Hosting mit LinuxSicheres Root-Server Hosting mit Linux
Sicheres Root-Server Hosting mit Linuxmarkusmarkert
 
OSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard LaußerOSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard LaußerNETWAYS
 
AdminCamp 14 - IBM Connections Deep Dive
AdminCamp 14 - IBM Connections Deep DiveAdminCamp 14 - IBM Connections Deep Dive
AdminCamp 14 - IBM Connections Deep DiveKlaus Bild
 
Ceph Introduction @GPN15
Ceph Introduction @GPN15Ceph Introduction @GPN15
Ceph Introduction @GPN15m1no
 

Was ist angesagt? (20)

Dockerize It - Mit apex in die amazon cloud
Dockerize It - Mit apex in die amazon cloudDockerize It - Mit apex in die amazon cloud
Dockerize It - Mit apex in die amazon cloud
 
Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012
 
Ldap sqlnet
Ldap sqlnetLdap sqlnet
Ldap sqlnet
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
 
Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...
Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...
Nagios Conference 2006 | SAP Monitoring II - Die technische Umsetzung by Wolf...
 
Infrastructure as code: Cloud-Umgebungen mit Terraform verwalten
Infrastructure as code: Cloud-Umgebungen mit Terraform verwaltenInfrastructure as code: Cloud-Umgebungen mit Terraform verwalten
Infrastructure as code: Cloud-Umgebungen mit Terraform verwalten
 
Performance durch Caching
Performance durch CachingPerformance durch Caching
Performance durch Caching
 
Der oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerterDer oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerter
 
Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...
Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...
Managen von ovm server sparc mit dem vm manager, o ps center oder vdcf-roman ...
 
Rex - Infrastruktur als Code
Rex - Infrastruktur als CodeRex - Infrastruktur als Code
Rex - Infrastruktur als Code
 
German Perl Workshop 2015 - Infrastruktur als Code
German Perl Workshop 2015 - Infrastruktur als CodeGerman Perl Workshop 2015 - Infrastruktur als Code
German Perl Workshop 2015 - Infrastruktur als Code
 
01 sqlplus
01 sqlplus01 sqlplus
01 sqlplus
 
Entwicklungsumgebungen mit Vagrant
Entwicklungsumgebungen mit VagrantEntwicklungsumgebungen mit Vagrant
Entwicklungsumgebungen mit Vagrant
 
Title is loading ... Cache is cold.
Title is loading ... Cache is cold.Title is loading ... Cache is cold.
Title is loading ... Cache is cold.
 
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterRsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
 
Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?
 
Sicheres Root-Server Hosting mit Linux
Sicheres Root-Server Hosting mit LinuxSicheres Root-Server Hosting mit Linux
Sicheres Root-Server Hosting mit Linux
 
OSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard LaußerOSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
 
AdminCamp 14 - IBM Connections Deep Dive
AdminCamp 14 - IBM Connections Deep DiveAdminCamp 14 - IBM Connections Deep Dive
AdminCamp 14 - IBM Connections Deep Dive
 
Ceph Introduction @GPN15
Ceph Introduction @GPN15Ceph Introduction @GPN15
Ceph Introduction @GPN15
 

Ähnlich wie Monitoring von SAP mit check_sap_health

Oracle connection manager_cman_doag_sig_security_mai_2015
Oracle connection manager_cman_doag_sig_security_mai_2015Oracle connection manager_cman_doag_sig_security_mai_2015
Oracle connection manager_cman_doag_sig_security_mai_2015Gunther Pippèrr
 
The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...
The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...
The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...Klaus Bild
 
Forms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsForms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsTorsten Kleiber
 
Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)
Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)
Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)Novakenstein
 
Grundlagen puppet
Grundlagen puppetGrundlagen puppet
Grundlagen puppetinovex GmbH
 
Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.
Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.
Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.Torsten Kleiber
 
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...LeanIX GmbH
 
Citrus Agile Testing Meetup (german)
Citrus Agile Testing Meetup (german)Citrus Agile Testing Meetup (german)
Citrus Agile Testing Meetup (german)christophd
 
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenIcsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenICS User Group
 
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...NETWAYS
 
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und JavaJUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und Javacamunda services GmbH
 
OSMC 2014: Business Prozessmonitoring mit BPView | Rene Koch
OSMC 2014: Business Prozessmonitoring mit BPView | Rene KochOSMC 2014: Business Prozessmonitoring mit BPView | Rene Koch
OSMC 2014: Business Prozessmonitoring mit BPView | Rene KochNETWAYS
 
AdminCamp 14: Make your IBM Connections deployment your own - Customize it!
AdminCamp 14: Make your IBM Connections deployment your own - Customize it!AdminCamp 14: Make your IBM Connections deployment your own - Customize it!
AdminCamp 14: Make your IBM Connections deployment your own - Customize it!Klaus Bild
 
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Trivadis
 
DACHNUG50 CNX2 Troubleshooting hcl connections.pdf
DACHNUG50 CNX2 Troubleshooting hcl connections.pdfDACHNUG50 CNX2 Troubleshooting hcl connections.pdf
DACHNUG50 CNX2 Troubleshooting hcl connections.pdfDNUG e.V.
 
Drupal 7 Einblick und Ausblick
Drupal 7 Einblick und AusblickDrupal 7 Einblick und Ausblick
Drupal 7 Einblick und AusblickAmazee Labs
 
Monitoring Openstack - LinuxTag 2013
Monitoring Openstack - LinuxTag 2013Monitoring Openstack - LinuxTag 2013
Monitoring Openstack - LinuxTag 2013NETWAYS
 
OSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware Monitoring
OSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware MonitoringOSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware Monitoring
OSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware MonitoringNETWAYS
 
OSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-Monitorings
OSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-MonitoringsOSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-Monitorings
OSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-MonitoringsNETWAYS
 

Ähnlich wie Monitoring von SAP mit check_sap_health (20)

Oracle connection manager_cman_doag_sig_security_mai_2015
Oracle connection manager_cman_doag_sig_security_mai_2015Oracle connection manager_cman_doag_sig_security_mai_2015
Oracle connection manager_cman_doag_sig_security_mai_2015
 
The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...
The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...
The Best Things in Life Are Free – Wie Sie Ihre IBM ConnecEons Umgebung koste...
 
Forms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsForms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and Operations
 
Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)
Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)
Migrate your Sametime Server to LDAP Authentication (Admincamp 2013)
 
Grundlagen puppet
Grundlagen puppetGrundlagen puppet
Grundlagen puppet
 
Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.
Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.
Das dreckige Dutzend - ADF Migration nach 12c in der IKB - DOAG 2014.
 
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
 
Logging mit log4net
Logging mit log4netLogging mit log4net
Logging mit log4net
 
Citrus Agile Testing Meetup (german)
Citrus Agile Testing Meetup (german)Citrus Agile Testing Meetup (german)
Citrus Agile Testing Meetup (german)
 
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenIcsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
 
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
 
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und JavaJUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
 
OSMC 2014: Business Prozessmonitoring mit BPView | Rene Koch
OSMC 2014: Business Prozessmonitoring mit BPView | Rene KochOSMC 2014: Business Prozessmonitoring mit BPView | Rene Koch
OSMC 2014: Business Prozessmonitoring mit BPView | Rene Koch
 
AdminCamp 14: Make your IBM Connections deployment your own - Customize it!
AdminCamp 14: Make your IBM Connections deployment your own - Customize it!AdminCamp 14: Make your IBM Connections deployment your own - Customize it!
AdminCamp 14: Make your IBM Connections deployment your own - Customize it!
 
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
 
DACHNUG50 CNX2 Troubleshooting hcl connections.pdf
DACHNUG50 CNX2 Troubleshooting hcl connections.pdfDACHNUG50 CNX2 Troubleshooting hcl connections.pdf
DACHNUG50 CNX2 Troubleshooting hcl connections.pdf
 
Drupal 7 Einblick und Ausblick
Drupal 7 Einblick und AusblickDrupal 7 Einblick und Ausblick
Drupal 7 Einblick und Ausblick
 
Monitoring Openstack - LinuxTag 2013
Monitoring Openstack - LinuxTag 2013Monitoring Openstack - LinuxTag 2013
Monitoring Openstack - LinuxTag 2013
 
OSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware Monitoring
OSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware MonitoringOSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware Monitoring
OSMC 2016 - Hello Redfish, Goodbye IPMI - The future of Hardware Monitoring
 
OSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-Monitorings
OSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-MonitoringsOSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-Monitorings
OSMC 2016 | Hello Redfish, goodbye IPMI - Die Zukunft des Hardware-Monitorings
 

Último

Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)
Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)
Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)Praxistage
 
Präsentation: Systemhärtung als präventive IT-Security-Maßnahme
Präsentation: Systemhärtung als präventive IT-Security-MaßnahmePräsentation: Systemhärtung als präventive IT-Security-Maßnahme
Präsentation: Systemhärtung als präventive IT-Security-MaßnahmeNoCodeHardening
 
Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...
Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...
Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...Praxistage
 
Essenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANA
Essenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANAEssenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANA
Essenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANAIBsolution GmbH
 
Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)
Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)
Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)Praxistage
 
SAP BTP Anwendungen & Berechtigungen - Gewusst wie!
SAP BTP Anwendungen & Berechtigungen - Gewusst wie!SAP BTP Anwendungen & Berechtigungen - Gewusst wie!
SAP BTP Anwendungen & Berechtigungen - Gewusst wie!IBsolution GmbH
 
Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)
Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)
Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)Praxistage
 

Último (7)

Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)
Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)
Ing. Boris Werner (Breitbandbüro des Bundesministeriums für Finanzen)
 
Präsentation: Systemhärtung als präventive IT-Security-Maßnahme
Präsentation: Systemhärtung als präventive IT-Security-MaßnahmePräsentation: Systemhärtung als präventive IT-Security-Maßnahme
Präsentation: Systemhärtung als präventive IT-Security-Maßnahme
 
Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...
Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...
Dipl.-Ing. Mag. Dr. Hans Aubauer, CFA (Generaldirektor SVS - Sozialversicheru...
 
Essenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANA
Essenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANAEssenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANA
Essenzielle Fiori-Anwendungen für das Finanzwesen in SAP S/4HANA
 
Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)
Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)
Fr. RA Mag. Birgit Noha, LL.M. (Laws.at)
 
SAP BTP Anwendungen & Berechtigungen - Gewusst wie!
SAP BTP Anwendungen & Berechtigungen - Gewusst wie!SAP BTP Anwendungen & Berechtigungen - Gewusst wie!
SAP BTP Anwendungen & Berechtigungen - Gewusst wie!
 
Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)
Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)
Mag.a Verena Becker, BSc. (Wirtschaftskammer Österreich/BSIC)
 

Monitoring von SAP mit check_sap_health

  • 1. Wir unternehmen IT. Monitoring von SAP mit check_sap_health Gerhard Laußer ConSol* Software GmbH Monitoring- Workshop 2014
  • 2. Seite Warum ein weiteres/neues SAP-Plugin? Weil  ich meine Plugins kontinuierlich weiterentwickeln/vereinheitlichen will und deshalb Perl für mich besser ist als C. (GLPlugin.pm)  ich Anforderungen schnell umsetzen will und das mit einer Scriptingsprache schneller geht als mit Compiliererei.  sich die „Plugin im Plugin“-Methode bewährt hat. (--mode my-zeugs)  ich Performancedaten will. 17.05.2014 www.consol.de2
  • 3. Seite Warum ein weiteres/neues SAP-Plugin? Weil  das uralte check_sap bei einem Kunden gecoredumpt hat. (_nicht_ das Netways-Plugin. Das ist saubere Arbeit, aber leider C)  /etc/sapmon/{agent,login,moni_tr}.cfg Gefrickel ist. (Und außerdem nicht zu gekapselten OMD-Sites passt)  Anforderungen in Richtung End2End/Businesslogik nicht zu einem starr kompilierten Plugin passen. (viel zu kundenspezifisch)  CCMS nur ein Teilaspekt ist und ich mit BAPI-Monitoring Neuland für Nagios erobern will. (Betriebswirtschaftliche Sicht)  das Plugin auch auf Windows laufen soll.  jemand für die Entwicklung bezahlt hat. 17.05.2014 www.consol.de3
  • 4. Seite Runterladen, bauen, installieren $ git clone http://github.com/lausser/check_sap_health $ cd check_sap_health $ autoreconf $ ./configure $ make $ cp plugins-scripts/check_sap_health $OMD_ROOT/local/lib/nagios/plugins 17.05.2014 www.consol.de4
  • 5. Seite Perl-Modul sapnwrfc $ cd /tmp $ SAPCAR -xf NWRFC_20-20004565-Linux-x86_64.SAR --> erzeugt /tmp/nwrfcsdk $ perl -MCPAN -e "install sapnwrfc" … No libsapnwrfc installation found, usually in /usr/sap/nwrfcsdk Which libsapnwrfc build path do you want to link against? /tmp/nwrfcsdk $ cp libicudata.so.34 libicudecnumber.so libicui18n.so.34 libicuuc.so.34 libsapnwrfc.so libsapucum.so $OMD_ROOT/local/lib 17.05.2014 www.consol.de5
  • 6. Seite Berechtigungen für den Monitoring-User 17.05.2014 www.consol.de6
  • 7. Seite Klopf, Klopf 17.05.2014 www.consol.de7 $ check_sap_health --ashost 172.24.0.195 --sysnr 42 --username NAGIOS --password soigan --mode connection-time OK - 0.06 seconds to connect as NAGIOS@NPL|'connection_time'=0.06;1;5;; $ check_sap_health --ashost 172.24.0.195 --sysnr 42 --username NAGIOS --password soigan --mode connection-time --warning 0.05 --critical 1 WARNING - 0.07 seconds to connect as NAGIOS@NPL | 'connection_time'=0.07;0.05;1;;
  • 8. Seite Klopf, Klopf – keiner daheim 17.05.2014 www.consol.de8 $ check_sap_health --ashost 172.24.0.195 --sysnr 42 --username NAGIOS --password soigan --mode connection-time CRITICAL - cannot create rfc connection: RFC connection open failed: 1 / RFC_COMMUNICATION_FAILURE / LOCATION CPIC (TCP/IP) on local host with Unicode ERROR partner '172.24.0.195:3342' not reached TIME Tue May 13 13:22:30 2014 RELEASE 720 COMPONENT NI (network interface) VERSION 40 RC -10 MODULE nixxi.cpp LINE 3285 DETAIL NiPConnect2: 172.24.0.195:3342 SYSTEM CALL connect ERRNO 111 ERRNO TEXT Connection refused COUNTER 1
  • 9. Seite Klopf, Klopf – keiner daheim - Aufräumen 17.05.2014 www.consol.de9 $ check_sap_health --ashost 172.24.0.195 --sysnr 42 --username NAGIOS --password soigan --mode connection-time CRITICAL - cannot create rfc connection: RFC connection open failed: 1 / RFC_COMMUNICATION_FAILURE / $ ls /tmp … rfc03337_2240837376.trc rfc11683_456742656.trc rfc03384_3936470784.trc rfc15772_808535808.trc rfc03386_4080981760.trc rfc15774_2616141568.trc … hinterlässt /tmp/dev_rfc.trc (wächst und wächst…) oder rfc<pid>.trc (müllt $RFC_TRACE_DIR zu) check_sap_health löscht selbständig Files, die älter als 5 Minuten sind.
  • 10. Seite CCMS-Baum auflisten – zuerst die Monitor Sets 17.05.2014 www.consol.de10 $ check_sap_health … --mode list-ccms-monitor-sets FlowLogicAccess Klaus SAP (CEN) B2B Procurement - Monitors SAP (CEN) EBP Procurement Internal Monitors SAP (CEN) EnterpriseBuyer Monitors SAP APO Monitor SAP BI Monitors SAP Business Communication SAP Business Workflow SAP CCMS Admin Workplace SAP CCMS Monitor Templates SAP CCMS Monitors for Optional Components SAP CCMS Technical Expert Monitors SAP CCMS Technical Operations Templates SAP CCMS Web Admin Monitor Templates SAP CRM Monitor Templates SAP CRM Monitor Templates for Release 6.20 SAP E-Sourcing Monitor Template SAP EM Monitor Templates SAP ERP Monitor Templates SAP EWM Monitor Templates SAP GBT Monitor Templates SAP GDS Monitor Set SAP GRC Global Trade Services Monitors SAP IW - Monitors SAP J2EE Monitor Templates SAP LPO Lean Production and Operations Monitor Templates SAP Mobile Infrastructure Monitor Templates SAP NetWeaver Enterprise Search Monitor Templates SAP OperatorWorkplace SAP Portfolio and Project Management Monitor Templates SAP Process Monitoring Infrastructure SAP RRR Monitor SAP SCM Basis Monitor Templates SAP SCM Monitor Templates SAP SNC Monitor Templates
  • 11. Seite CCMS-Baum auflisten – dann die Monitore 17.05.2014 www.consol.de11 $ check_sap_health … --mode list-ccms-monitors --name "SAP CCMS Monitor Templates" SAP CCMS Monitor Templates Availability and Performance Overview Background Processing Buffers Change & Transport System Communications Data Archiving Database Dialog Overview Dialog per Application Server Enqueue Entire System Exchange Infrastructure Filesystems J2EE Applications J2EE Engine Operating System Performance Overview Remote Databases Security Spool System Syslog System Configuration System Errors VM Container Workload Collector liveCache OK - have fun
  • 12. Seite CCMS-Baum auflisten – dann die MTEs 17.05.2014 www.consol.de12 • MT_CLASS_PERFORMANCE $ check_sap_health … --mode list-ccms-mtes --name "SAP CCMS Monitor Templates" --name2 "Enqueue" NPLEnqueueEnqueue 50 NPLEnqueueEnqueue Server 70 NPLEnqueueEnqueue ServerBackup Requests 100 NPLEnqueueEnqueue ServerCleanUp Requests 100 … NPLEnqueueEnqueue ServerEnqueue Requests 100 NPLEnqueueEnqueue ServerGranule Arguments 111 NPLEnqueueEnqueue ServerGranule Arguments Actual Utilisation 100 NPLEnqueueEnqueue ServerGranule Arguments Peak Utilisation 111 NPLEnqueueEnqueue ServerGranule Entries 111 … NPLEnqueueEnqueue ServerOwner Names Actual Utilisation 100 NPLEnqueueEnqueue ServerOwner Names Peak Utilisation 111 NPLEnqueueEnqueue ServerRecent Lock Time (per minute) 100 NPLEnqueueEnqueue ServerRecent Lock Wait Time (per minute) 100 NPLEnqueueEnqueue ServerRecent Server Time (per minute) 100 … NPLEnqueueEnqueue ServerRuntime of Data Collector 100 NPLEnqueueEnqueue ServerTotal Lock Time 111 NPLEnqueueEnqueue ServerTotal Lock Wait Time 111 NPLEnqueueEnqueue ServerUpdate Queue Peak 111 NPLnplhost_NPL_42EnqueueClient 70 … NPLnplhost_NPL_42EnqueueServerUtilisation Granule Arguments 100 NPLnplhost_NPL_42EnqueueServerUtilisation Granule Entries 100 NPLnplhost_NPL_42EnqueueServerUtilisation Owner Names 100 Connection to Standalone Enqueue 199 Enqueue 199 Enqueue Clients 199 OK 100 = MT_CLASS_PERFORMANCE 111 = MT_CLASS_SHORTTEXT
  • 13. Seite CCMS-MTE herausgreifen 17.05.2014 www.consol.de13 • MT_CLASS_PERFORMANCE $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Enqueue" --name3 "NPLEnqueueEnqueue ServerTotal Lock Time" OK - Total Lock Time = 0.188 s | 'Enqueue Server_Total Lock Time'=0.18s;;;;
  • 14. Seite Nochmal, aber ohne hässliche Backslashes 17.05.2014 www.consol.de14 • MT_CLASS_PERFORMANCE $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Enqueue" --name3 "NPL#Enqueue#Enqueue Server#Total Lock Time" --separator "#" OK - Total Lock Time = 0.188 s | 'Enqueue Server_Total Lock Time'=0.18s;;;;
  • 15. Seite Mit regulären Ausdrücken 17.05.2014 www.consol.de15 $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Enqueue" --name3 "Lock Time" --regexp OK - Enqueue Server Recent Lock Time (per minute) = 0s, Total Lock Time = 0.195 s | 'Enqueue Server_Recent Lock Time (per minute)'=0s;0:;0:;; 'Enqueue Server_Total Lock Time'=0.20s;;;; $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Enqueue" --name3 "Lock.*Time" --regexp OK - Enqueue Server Recent Lock Time (per minute) = 0s, Enqueue Server Recent Lock Wait Time (per minute) = 0s, Total Lock Time = 0.195 s, Total Lock Wait Time = 0.031 s | 'Enqueue Server_Recent Lock Time (per minute)'=0s;0:;0:;; 'Enqueue Server_Recent Lock Wait Time (per minute)'=0s;0:;0:;; 'Enqueue Server_Total Lock Time'=0.20s;;;; 'Enqueue Server_Total Lock Wait Time'=0.03s;;;;
  • 16. Seite CCMS auslesen 17.05.2014 www.consol.de16 $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Dialog Overview" OK - Dialog FrontEndNetTime = 0msec, Dialog ResponseTime = 380msec, Dialog ResponseTime(StandardTran.) = 13msec, Dialog UsersLoggedIn = 2 | 'Dialog_FrontEndNetTime'=0ms;2000;3000;; 'Dialog_ResponseTime'=380ms;2000;3000;; 'Dialog_ResponseTime(StandardTran.)'=13ms;1500;2500;; 'Dialog_UsersLoggedIn'=2;500;750;;
  • 17. Seite CCMS auslesen mit mehrzeiligem Output 17.05.2014 www.consol.de17 $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Dialog Overview" --multiline OK - Dialog FrontEndNetTime = 0msec Dialog ResponseTime = 297msec Dialog ResponseTime(StandardTran.) = 13msec Dialog UsersLoggedIn = 2 | 'Dialog_FrontEndNetTime'=0ms;2000;3000;; 'Dialog_ResponseTime'=297ms;2000;3000;; 'Dialog_ResponseTime(StandardTran.)'=13ms;1500;2500;; 'Dialog_UsersLoggedIn'=2;500;750;;
  • 18. Seite CCMS auslesen 17.05.2014 www.consol.de18 $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Enqueue" --name3 "(Enqueue Request Errors)|(Enqueue Request Rejects)" --regexp --multiline OK - Enqueue Server Enqueue Request Errors = 0/sec Enqueue Server Enqueue Request Rejects = 0/sec | 'Enqueue Server_Enqueue Request Errors'=0;0:;0:;; 'Enqueue Server_Enqueue Request Rejects'=0;0:;0:;;
  • 19. Seite CCMS am Solution Manager auslesen 17.05.2014 www.consol.de19 Im Solution Manager beinhalten die MTE-Namen zusätzlich die SID der angeschlossenen Systeme $ check_sap_health … --mode ccms-mte-check --name "SAP CCMS Monitor Templates" --name2 "Enqueue" --name3 "$_SERVICESID$.*(Enqueue Request Errors)|(Enqu…." --regexp --multiline OK - Enqueue Server Enqueue Request Errors = 0/sec Enqueue Server Enqueue Request Rejects = 0/sec | 'Enqueue Server_Enqueue Request Errors'=0;0:;0:;; 'Enqueue Server_Enqueue Request Rejects'=0;0:;0:;;
  • 20. Seite CCMS Beispiele 17.05.2014 www.consol.de20 define service { service_description app_sap_NPL_default_check_datafile_offline host_name WAWIS12 use generic-service check_command check_sap_health_ccms!60! $HOSTADDRESS$!42!001!NAGIOS!soigan! SAP CCMS Monitor Templates!Database!#Database file offline } define service { service_description app_sap_NPL_default_check_tablespace_usage host_name WAWIS12 use generic-service check_command check_sap_health_ccms!60! $HOSTADDRESS$!42!001!NAGIOS!soigan! SAP CCMS Monitor Templates!Database!#Used space } define service { service_description app_sap_NPL_default_check_last_backup host_name WAWIS12 use generic-service check_command check_sap_health_ccms!60! $HOSTADDRESS$!42!001!NAGIOS!soigan! SAP CCMS Monitor Templates!Database!#Last succ. complete database backup } define service { service_description app_sap_NPL_default_check_last_log_backup host_name WAWIS12 use generic-service check_command check_sap_health_ccms!60! $HOSTADDRESS$!42!001!NAGIOS!soigan! SAP CCMS Monitor Templates!Database!#Archiving#Last succ. archive log backup } define service { service_description app_sap_NPL_default_check_spool_used host_name WAWIS12 use generic-service check_command check_sap_health_ccms!60! $HOSTADDRESS$!42!001!NAGIOS!soigan! SAP CCMS Monitor Templates!Spool System!#Spool#SpoolNumbers#UsedNumbers } define service { service_description app_sap_NPL_default_check_connect host_name WAWIS12 use generic-service,srv-pnp check_command check_sap_health!60! $HOSTADDRESS$!42!001!NAGIOS!soigan! connection-time!--warning 10 --critical 20 } define servicedependency { name dependency_app_sap_NPL_default_check_connect host_name WAWIS12 service_description app_sap_NPL_default_check_connect execution_failure_criteria u,c notification_failure_criteria u,c dependent_service_description app_sap_NPL_default_check_datafile_offline, app_sap_NPL_default_check_tablespace_usage, app_sap_NPL_default_check_last_backup, app_sap_NPL_default_check_last_log_backup, app_sap_NPL_default_check_spool_used, !app_sap_NPL_default_check_connect } …… Last Optimizer Run, Enqueue system, Shortdumps, Caches, Response Times, Optimizer Statistics, Deadlocks, Memory Management, R3Rollpaging, Aborted Jobs, uvm.
  • 21. Seite CCMS ist nicht alles  SAP-Admins benutzen Solution Manager (d.h. CCMS mit Bordmitteln).  SAP-Admins sind gutmütig und haben kein Problem mit Nagios-Usern.  Nagios-Notification ist praktisch für Umbrella-Monitoring.  In SAP-Systemen stecken teure Anpassungen, core business critical enterprise key customer blablubb. Monitoring als Qualitätssicherung.  Fremdsysteme kommunizieren mit SAP (RFC-enabled functions). Verfügbarkeit der Schnittstellen (und Antwortzeiten) .  In SAP steckt viel Business-Logik. Der Zugriff von Aussen (Nagios) ist kein Hexenwerk.  Störungen im Materialfluss/Bestellwesen/Anlieferung/… erregen mehr Aufmerksamkeit als schlechte Dialog-Response-Zeiten. 17.05.2014 www.consol.de21
  • 22. Seite Erweiterungen schreiben 17.05.2014 www.consol.de22 $OMD_ROOT/etc/check_sap_health/CheckSapHealthTest.pm package MyTest; our @ISA = qw(Classes::SAP); use Time::HiRes; sub init { my $self = shift; my $bapi_tic = Time::HiRes::time(); if ($self->mode =~ /my::test::rfcping/) { my $ping = $self->session->function_lookup("RFC_PING"); my $fc = $ping->create_function_call; my $frc = $fc->invoke(); $self->add_ok("pong"); # $fc kann jetzt weiter ausgewertet werden } my $bapi_tac = Time::HiRes::time(); my $bapi_duration = $bapi_tac - $bapi_tic; $self->set_thresholds(warning => 5, critical => 10); $self->add_message($self->check_thresholds($bapi_duration), sprintf "runtime was %.2fs", $bapi_duration); $self->add_perfdata( label => 'runtime', value => $bapi_duration, ); }
  • 23. Seite Erweiterungen schreiben – einfacher Demo-Ping 17.05.2014 www.consol.de23 package MyTest; … sub init { … if ($self->mode =~ /my::test::rfcping/) { $ check_sap_health --with-mymodules-dyn-dir $USER4/check_sap_health --mode my-test-rfcping OK - pong, runtime was 0.02s | 'runtime'=0.02;5;10;; MyTest my::test::rfcping my-test-rfcping
  • 24. Seite API für selbstgeschriebene Erweiterungen  Man braucht sub init { my $self = shift;  $self->mode ist der Kommandozeilenparameter --mode in der internen Repräsentation. (Doppeldoppelpunkt statt Bindestrich)  $self->opts->para ist der Wert des Kommandozeilenparameter para  $self->session ist das Handle für die RFC-Verbindung  $self->add_ok(text), $self->add_warning(text), …  $self->set_thresholds(warning => defwarn, critical => defcrit)  $self->check_thresholds(value)  $self->add_perfdata(label => label, value => value, [uom => uom]) 17.05.2014 www.consol.de24
  • 25. Seite Beispiel 2: BAPI_BUPA_CENTRAL_GETLIST 17.05.2014 www.consol.de25 $ check_sap_health --with-mymodules-dyn-dir $USER4/etc/check_sap_health --mode my-bapi-bpgetlist --name A000000001 OK - BAPI_BUPA_CENTRAL_GETDETAIL is OK, found partner ConSol* Software GmbH, runtime was 0.14s | 'runtime'=0.14;5;10;;
  • 26. Seite BAPI-Schnittstellendefinition 17.05.2014 www.consol.de26 In der Transaktion SE37 kann man nach Funktionen suchen und ihre Aufruf- bzw. Rückgabeschnittstelle anschauen.
  • 27. Seite17.05.2014 www.consol.de27 etc/check_sap_health/CheckSapHealthBapi.pm package MyBapi; our @ISA = qw(Classes::SAP); use Time::HiRes; sub init { my $self = shift; my $bapi_tic = Time::HiRes::time(); if ($self->mode eq "my::bapi::bpgetlist") { eval { my $fl = $self->session->function_lookup("BAPI_BUPA_CENTRAL_GETLIST"); my $fc = $fl->create_function_call; $fc->BUSINESSPARTNER($self->opts->name); # A000000001 $fc->VALIDFROM("01010001"); $fc->VALIDTO("31129999"); $fc->invoke; my @rows = @{$fc->RETURN}; if (scalar(@rows) == 0) { # leere Tabelle RETURN ist OK $self->add_ok("BAPI_BUPA_CENTRAL_GETDETAIL is OK"); $fc->CENTRALDATAORGANIZATION->[0]->{NAME1} =~ s/s+$//; $self->add_ok(sprintf "found partner %s", $fc->CENTRALDATAORGANIZATION->[0]->{NAME1}); } elsif (scalar(@rows) == 1) { if ($rows[0]->{TYPE} =~ /^(E|A)/) { $self->add_unknown($rows[0]->{MESSAGE}); } else { $self->add_ok("BAPI_BUPA_CENTRAL_GETDETAIL is OK"); } } else { foreach my $row (@rows) { $errors++ if $row->{TYPE} =~ /^(E|A)/ && $rownum > 0; $rownum++; } $self->add_message($errors ? 2 : 0, sprintf "BAPI_BUPA_CENTRAL_GETDETAIL returned %d errors (in %d rows)", $errors, $rownum); } }; if ($@) { $self->add_unknown($@); } } elsif ($self->mode =~ /my::bapi::weiterefunktionen/) { } else { $self->add_unknown("unknown mode"); } my $bapi_tac = Time::HiRes::time(); my $bapi_duration = $bapi_tac - $bapi_tic; $self->set_thresholds(warning => 5, critical => 10); $self->add_message($self->check_thresholds($bapi_duration), sprintf "runtime was %.2fs", $bapi_duration); $self->add_perfdata( label => 'runtime', value => $bapi_duration, ); }
  • 28. Seite Job- und SLA-Monitoring  End-of-Day-Jobs und insbes. nächtliche Batches (bei Banken üblich) werden in Tabellen in SAP protokolliert, incl. Startzeit, Endezeit, Status.  Mit check_sap_health kann man überwachen, ob Jobs erfolgreich und innerhalb eines SLA-Fensters abgeschlossen wurden. (Oder man verwendet check_sap_health, um solche Daten aus SAP zu holen und in eine generische Job-Tabelle zu schreiben) Bsp.: Job muss um 07:45 fertig sein, ab 10 Min. Verspätung gibt‘s Ärger. check_sap_health --mode my-eod-sla --name FI_LOAN_CALC --name2 07:45 --warning 0 --critical 600 17.05.2014 www.consol.de28
  • 29. Seite Tabellen auslesen, z.B. SNAP Fehlerzustände, sog. Shortdumps, werden in SAP protokolliert. In der Transaktion ST22 kann man routinemäßig nachsehen. 17.05.2014 www.consol.de29
  • 30. Seite Tabellen auslesen, z.B. SNAP Intern stehen die Shortdumps in der Tabelle SNAP. Mit RFC kann man die Tabelle auslesen und prüfen, ob seit dem letzten Lauf des Plugins neue Dumps hinzugekommen sind. $ check_sap_health … --with-mymodules-dyn-dir $OMD_ROOT/etc/check_sap_health --mode my-snap-dumps-check OK - no new shortdumps $ $ check_sap_health … --with-mymodules-dyn-dir $OMD_ROOT/etc/check_sap_health --mode my-snap-dumps-check CRITICAL - 2 new shortdumps appeared between 20140509 171649 and 20140513 164249 17.05.2014 www.consol.de30
  • 31. Seite Praxiseinsatz Handelskonzern, >20 weltweite Standorte, überwiegend CCMS- Monitoring, Businesslogik folgt in einem späteren Projektstadium. Eine der grössten südeutschen Kommunen. **Bank, von mehreren Standorten in aller Welt werden die Laufzeiten von geschäftskritischen BAPIs gemessen. Vor Ort stehen Windows7-PCs (in erster Linie für Sakuli-Tests), per NSClient++ wird check_sap_health.exe aufgerufen. Weltbekannter Leuchtmittelhersteller. 17.05.2014 www.consol.de31
  • 32. Seite Ausblick Generischer Modus für DB-Optimizer (Oracle, Maxdb..). Implementierung von best-practice SAP-Basis-Routine-Prüfungen . MTE-übergreifende Performancemessungen und Lösungsvorschläge. Aber: nur dann, wenn jemand die Entwicklung bezahlt. Ich helfe gerne bei der Analyse und der Implementierung des Applikations/Business-Monitorings, allerdings nur bei einer formellen, sprich bezahlten Beauftragung. Mails mit dem Inhalt „Super Tool. Wir möchten…..kannst du mal….“ oder gar „…unser Kunde möchte…kannst du mal…“ werde ich vermutlich nicht beantworten. Open Source bedeutet nicht gratis Consulting. 17.05.2014 www.consol.de32 Kleingedrucktes
  • 33. Seite 3317.05.2014 www.consol.de ConSol* Software GmbH Franziskanerstraße 38 D-81669 München Tel: +49-89-45841-100 Fax: +49-89-45841-111 gerhard.lausser@consol.de www.consol.de