Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Luna and Third Party Tools for Troubleshooting Web Application Issues

Luna and Third Party Tools for Troubleshooting Web Application Issues

In today's fast-paced and hyper-connected world, solving web-application issues quickly is critical for any business. If a web app is down even for a moment, it can lead to lost revenue and customers. While Akamai services and support teams are a fantastic troubleshooting resource, many issues can be quickly solved by customers themselves. In this session, you'll learn the tips and tricks for troubleshooting using Luna and third-party tools, giving you the power to quickly identify and resolve web application issues on your own.

Akamai Developer

October 11, 2017
Tweet

More Decks by Akamai Developer

Other Decks in Technology

Transcript

  1. © AKAMAI - EDGE 2017 Luna and Third Party Tools

    for Troubleshooting Web Application Issues
  2. © AKAMAI - EDGE 2017 Luna and Third Party Tools

    for Troubleshooting Web Application Issues Solutions Architect, Lead Sharath Rao Product Support Engineer Vladimir Sidorov Technical Support Engineer II Blaž Vizjak
  3. © AKAMAI - EDGE 2017 Agenda Luna troubleshooting tools •

    Network debugging tools • Service debugging tools Pragma headers Third party troubleshooting tools Use cases
  4. © AKAMAI - EDGE 2017 Network debugging tools Get User

    IP Details Allows you to create a custom URL to send to the end user to collect: • their IP address • DNS nameserver IP address • edge server IP address
  5. © AKAMAI - EDGE 2017 Network debugging tools View User

    IP Details Allows you to view collected data from Get User IP Details tool
  6. © AKAMAI - EDGE 2017 Network debugging tools Verify Akamai

    IP Check if an IP address belongs to Akamai
  7. © AKAMAI - EDGE 2017 Network debugging tools Get Domain

    Details (DIG) Resolve a hostname from a different locations
  8. © AKAMAI - EDGE 2017 Network debugging tools Test Network

    Connectivity (MTR) Perform traceroute from an Akamai server
  9. © AKAMAI - EDGE 2017 Service debugging tools Translate an

    Akamaized URL Get basic information from the URL • Origin server • CP Code • Cache TTL
  10. © AKAMAI - EDGE 2017 Service debugging tools Translate Error

    String Translate error string to fetch error summary and logs
  11. © AKAMAI - EDGE 2017 Service debugging tools Request Content

    (CURL) Perform a cURL command from an Akamai server
  12. © AKAMAI - EDGE 2017 Service debugging tools View Logs

    (GREP) Retrieve logs from Akamai server
  13. © AKAMAI - EDGE 2017 Service debugging tools Debug URL

    Perform a cURL command from an Akamai server
  14. © AKAMAI - EDGE 2017 Service debugging tools Get Error

    Statistics Real-time error statistics
  15. © AKAMAI - EDGE 2017 Pragma headers allow to get

    an extra information about the request. $ curl -L -D - -o /dev/null -s -XGET -H "Pragma: akamai-x-cache- on, akamai-x-cache-remote-on, akamai-x-check-cacheable, akamai-x- get-cache-key, akamai-x-get-true-cache-key, akamai-x-get- extracted-values, akamai-x-get-ssl-client-session-id, akamai-x- serial-no, akamai-x-get-request-id, x-akamai-logging-mode: verbose" https://www.example.com Pragma headers allow to get an extra information about the request. $ curl -L -D - -o /dev/null -s -XGET -H "Pragma: akamai-x-cache- on, akamai-x-cache-remote-on, akamai-x-check-cacheable, akamai-x- get-cache-key, akamai-x-get-true-cache-key, akamai-x-get- extracted-values, akamai-x-get-ssl-client-session-id, akamai-x- serial-no, akamai-x-get-request-id, x-akamai-logging-mode: verbose" https://www.example.com Akamai pragma headers
  16. © AKAMAI - EDGE 2017 Akamai pragma headers Pragma Request

    Header Value Response Header Description Response Header Example akamai-x-cache-on X-Cache Describes if the object was served from cache and the IP address of the Akamai server X-Cache: TCP_MISS from a23-50-49- 4.deploy.akamaitechnol ogies.com (AkamaiGHost/9.1.0.2- 20871891) (-) akamai-x-check- cacheable X-Cache-Cacheable YES or NO response whether the object can be cached or not X-Check- Cacheable: YES akamai-x-get- cache-key X-Cache-Key Describes unique identifier for the object being requested X-Cache-Key: /D/123/654321/1d/ origin.example.co m/index.html
  17. © AKAMAI - EDGE 2017 Akamai pragma headers Pragma Request

    Header Value Response Header Description Response Header Example akamai-x-get- extracted-values X-Akamai-Session- Info Describes any variables that were set in metadata X-Akamai-Session- Info: name=AKA_PM_TD_EN ABLED; value=false akamai-x-get- request-id X-Akamai-Request- ID Unique request ID to find request’s log line X-Akamai-Request- ID: 3301b2
  18. © AKAMAI - EDGE 2017 Third party troubleshooting tools MTR

    My traceroute Traceroute Tracert Windows trace route tool
  19. © AKAMAI - EDGE 2017 Third party troubleshooting tools CURL

    Command line tool for getting or sending files using URL syntax DIG Command line tool for querying DNS servers
  20. © AKAMAI - EDGE 2017 Third party troubleshooting tools Charles

    Proxy HTTP debugging proxy server application
  21. © AKAMAI - EDGE 2017 Use cases Unexpected Behavior: •

    no response to a request • response not getting cached Useful tools: • Get Domain Details (DIG) • Verify Akamai IP Connectivity issues: • dropped packets • higher latency Useful tools: • Test Network Connectivity (MTR) Access Denied: • site limited to US but requested from India Useful tools: • Translate Error String • View Logs (GREP) • Locate IP • Request CURL with X-Forwarded-For with an IP address from US Property information: • What CP code and origin are used for a specific URL (applicable for complex setups) Useful tools: • Translate an Akamaized URL • Akamai Pragma headers
  22. © AKAMAI - EDGE 2017 Summary Today we learnt how

    to • Test and troubleshoot with Luna tools • Test availability and performance from own computer • Run tools from different locations using Luna tools • Different troubleshooting scenarios