This presentation is online:
Growing, mid-sized global mining company
Multi-year investment in Enterprise IT systems
Some very important interfaces
Small team: efficiency & skills
Balance
Modern | vs. | Practical |
Quality | vs. | Budget |
Solid | vs. | Nimble |
Boring ≠ Bad
Use new/unproven tech only where it matters
Optimise Globally (Architecture! ☺)
You should really read this!
One team.
Dev to improve Ops
Ops Experience to improve Dev
However...
Standard language
Used by most middleware systems
Collaboration! :-)
e.g. using XSpec
USD
AUD
1.20613
M
2014-12-10
CAD
HKD
7.07113562438128
ZYFC
2014-12-10
...
USD
AUD
1.20613
M
2014-12-10
USD
TND
1.8566
M
2014-12-10
...
Watch a Demo by the creator Jeni T
In most cases a non-issue
Used to be dicey before 7.10
AusPost's "POSLog" interface used only XSLT for 1m+ messages/day
First Name | Last Name | Last Name | First Name | |
---|---|---|---|---|
Marie | Curie | Becquerel | Henri | |
Henri | Becquerel | Curie | Marie | |
Pierre | Curie | Pierre | ||
Basically the GROUP BY clause in SQL...
,
Adapted from template solution by Jeni T.
Makes many things much simpler!
Supported in a limited way from PI 7.31 SP11
Alternative: Java wrapper.
...
And lots of other improvements...
Now supported in 7.31 and later!
Needed a way to address shortcomings of the ESR:
Initial learning curve
Discipline required
Code reviews before merging into master
Offshore development: Only trusted devs have merge rights
Avoid edit conflicts
An SAP tool for Github code review!
"Monitoring is Still a Big Issue" - IFG for PI Survey
Traditional Alert Framework
Since 7.3: also Component-Based Message Alerting & SolMan
Difficult to set up; very sparse documentation
SolMan as central monitor, polls other systems for alerts
Lots of noise & false positives
25% adoption
Barriers:
Alert Framework
⇧
CBMA
⇧
Custom Solution
Brittle
Noise
Email == Spam
Brittle
Noise
Email == Spam
More Complex! :-(
[null]1 message failed for "DEFAULT_ALERTRULE" on "MMG_SAPERP_PRD010" {
"Component": "MMG_SAPERP_PRD010",
"ErrCat": "Application",
"ErrCode": "ABAP.APPLICATION_ERROR",
"ErrLabel": "2000",
"ErrParams": {},
"ErrText": "Application has thrown an exception",
"FromParty": "",
"FromService": "SUNGARD_AVANTGARD_PRD",
"Interface": "AccountingDocumentAvantGardTreasuryJournalBulkCreateRequest_In",
"MonitoringUrl": "http://host:port/sap/bc/gui/sap/its/webgui/SE61_DISPTXT?~transaction=*SXI_SHOW_MESSAGE%20MSGGUID=56D34B27536511E4B7A700000C5922FA",
"MsgId": "56D34B27536511E4B7A700000C5922FA",
"Namespace": "http://mmg.com/p2m/sap_appl",
"RuleId": "d42a9af9fdc53609843f5a1d9f211911",
"Timestamp": "2014-10-14T05:45:54Z",
"ToParty": "",
"ToService": "MMG_SAPERP_PRD010"
}
Simple
Manual monitoring
Noise
Chat
Mobile app & push notifications
Searchable history
Freemium
Difficult to keep track
Who watches the watcher?
Issue tracking
De-duplication
On-call rosters
Cheap
Eliminated manual monitoring
With a simple XSLT to transform CBMA alerts to OpsGenie API messages.
Find this presentation at
http://slides.BlueT.com.au/saug2015po
sascha@BlueT.com.au
+61 403 933 472
@sufw