The Last Mile
-
Upload
stephen-melrose -
Category
Technology
-
view
214 -
download
0
description
Transcript of The Last Mile
![Page 1: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/1.jpg)
The Last Mile
Disclaimer: I’m only using Windows for PowerPoint. Please don’t judge.
@StephenMelroseLead Software Engineer - BSkyB
Photo by Ousseynou Cisséhttps://www.flickr.com/photos/afuelcalledlove/
![Page 2: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/2.jpg)
Are Recruiting!Developers, DevOps, Scala/Hadoop,
Node.js Super Heroes, Principle Test Engineers,an Engineering Manager, and more!
[email protected] more info, please see/contact:
![Page 3: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/3.jpg)
SPIN Connector
![Page 4: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/4.jpg)
Context
![Page 5: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/5.jpg)
![Page 6: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/6.jpg)
![Page 7: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/7.jpg)
![Page 8: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/8.jpg)
![Page 9: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/9.jpg)
Image source: http://blog.burningman.com/wp-content/uploads/2012/09/blog4.jpg
![Page 10: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/10.jpg)
(a.k.a. SPIN)
![Page 11: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/11.jpg)
Image source: http://www.psdgraphics.com/file/adhesive-plaster.jpg
![Page 12: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/12.jpg)
Image source: http://patriciaknight.files.wordpress.com/2011/08/change-architect-sign1.jpg
![Page 13: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/13.jpg)
![Page 14: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/14.jpg)
Image source: http://3.bp.blogspot.com/-Kdzzg4pimz0/Udk6bE5tDvI/AAAAAAAAFes/MxIGspcwu3M/s1600/photo.JPG
![Page 15: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/15.jpg)
![Page 16: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/16.jpg)
TestingPerformanceExtendibility
Supportability
![Page 17: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/17.jpg)
Logging
![Page 18: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/18.jpg)
Request failed
Connection lost
Failed to perform action
![Page 19: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/19.jpg)
![Page 20: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/20.jpg)
Request failed
Connection lost
Failed to perform action
![Page 21: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/21.jpg)
Request failed
Connection lost
Failed to perform action
![Page 22: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/22.jpg)
Request failed
Connection lost
Failed to perform action
![Page 23: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/23.jpg)
UsefulInformative
![Page 24: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/24.jpg)
Failed to start-up controller for fixture [gC6RFPZ0IW7Zv_vqFR78Aj6_05c]: Failed to get AMQP details from SPIN Connect API: Failed to get stream AMQP details: HTTP request failed: ETIMEDOUT - Request: {"url":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c","options":{"headers":{"Accept-Encoding":"gzip","X-Auth-Token":"XXXXXX"},"timeout":30000,"attempt":2,"uri":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c"}}
![Page 25: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/25.jpg)
Failed to start-up controller for fixture [gC6RFPZ0IW7Zv_vqFR78Aj6_05c]: Failed to get AMQP details from SPIN Connect API: Failed to get stream AMQP details: HTTP request failed: ETIMEDOUT - Request: {"url":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c","options":{"headers":{"Accept-Encoding":"gzip","X-Auth-Token":"XXXXXX"},"timeout":30000,"attempt":2,"uri":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c"}}
![Page 26: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/26.jpg)
Failed to start-up controller for fixture [gC6RFPZ0IW7Zv_vqFR78Aj6_05c]: Failed to get AMQP details from SPIN Connect API: Failed to get stream AMQP details: HTTP request failed: ETIMEDOUT - Request: {"url":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c","options":{"headers":{"Accept-Encoding":"gzip","X-Auth-Token":"XXXXXX"},"timeout":30000,"attempt":2,"uri":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c"}}
![Page 27: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/27.jpg)
Failed to start-up controller for fixture [gC6RFPZ0IW7Zv_vqFR78Aj6_05c]: Failed to get AMQP details from SPIN Connect API: Failed to get stream AMQP details: HTTP request failed: ETIMEDOUT - Request: {"url":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c","options":{"headers":{"Accept-Encoding":"gzip","X-Auth-Token":"XXXXXX"},"timeout":30000,"attempt":2,"uri":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c"}}
![Page 28: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/28.jpg)
Failed to start-up controller for fixture [gC6RFPZ0IW7Zv_vqFR78Aj6_05c]: Failed to get AMQP details from SPIN Connect API: Failed to get stream AMQP details: HTTP request failed: ETIMEDOUT - Request: {"url":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c","options":{"headers":{"Accept-Encoding":"gzip","X-Auth-Token":"XXXXXX"},"timeout":30000,"attempt":2,"uri":"http://<api-domain>/UnifiedDataAPI/stream/IceHockey/gC6RFPZ0IW7Zv_vqFR78Aj6_05c"}}
![Page 29: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/29.jpg)
Log Tail Video
![Page 30: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/30.jpg)
Nothing
![Page 31: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/31.jpg)
![Page 32: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/32.jpg)
![Page 33: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/33.jpg)
The Syslog Protocol (RFC 5424)
DEBUG Verbose and raw debug information. Use in development only.e.g. request/response bodies
INFO 95% of our logging. Stuff we want to monitor, e.g. HTTP request complete, took X seconds, performed Y actions
NOTICE Similar to INFO, but significant events.Also, errors that CAN happen and we HAVE HANDLED
WARN Errors that SHOULDN’T happen, but we HAVE HANDLED
ERROR Errors that SHOULDN’T happen and we CAN’T HANDLE
CRITICAL Fatal errors that cause the application to crash
![Page 34: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/34.jpg)
![Page 35: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/35.jpg)
![Page 36: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/36.jpg)
![Page 37: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/37.jpg)
Graphs
![Page 38: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/38.jpg)
Node.js LogProcessor Graphitestatsd
![Page 39: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/39.jpg)
![Page 40: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/40.jpg)
![Page 41: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/41.jpg)
Monitoring
![Page 42: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/42.jpg)
![Page 43: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/43.jpg)
![Page 44: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/44.jpg)
Load Testing
![Page 45: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/45.jpg)
SPIN’s API OpenBetSPIN Connector
SPIN Recorder
![Page 46: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/46.jpg)
SPIN’s API OpenBetSPIN Connector
Fake SPIN API Our EntireFrontend Stack
![Page 47: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/47.jpg)
Released to Live
![Page 48: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/48.jpg)
Information exposure is paramountKnow what your app is doing
Automate the monitoringMake sure it can do it
![Page 49: The Last Mile](https://reader036.fdocuments.net/reader036/viewer/2022062404/554bc03bb4c90530298b501b/html5/thumbnails/49.jpg)
Thank youAny questions?
@StephenMelrosehttp://stephenmelrose.co.uk/