JavaScript Forensics

JavaScript Forensics

Something terrible happened here. Traces of errors litter the floor; memory leaking from cracks in the ceiling. Someone lost their object context in the corner. Everything reeks of jank. In this session, a JavaScript error tracking expert breaks down a series of common and complex crimes against web applications. You’ll leave the session armed with techniques and tools to detect, diagnose, and fix your JavaScript web applications. Bring your bugs and let’s fix up our web.

Code examples:
https://github.com/toddhgardner/soliloquy

Checkout TrackJS Error Monitoring:
https://trackjs.com/javascript?utm_source=slides&utm_medium=speakerdeck&utm_term=forensics

6b5ff9c8a7cb4ae40c4eaa99d2c068fe?s=128

Todd Gardner

April 22, 2015
Tweet

Transcript

  1. 7.
  2. 9.

    Scripty “Line 1” Joe Place of Origin: Characteristics: Associates: Browser

    Obfuscation Noisy 3rd party domains Apprehend with CORS and crossorigin attributes Remarks:
  3. 11.
  4. 12.
  5. 13.

    Jane “3rd Party” Adsy Place of Origin: Characteristics: Associates: Unplanned

    Changes Sudden bursts of violence SaaS, Analytics, CDN Weigh risk vs value of 3rd party dependencies Remarks:
  6. 16.
  7. 17.

    Clara “This&That” Context Place of Origin: Characteristics: Associates: Functional Args

    Not Defined Callbacks, Promises Can usually be discovered through test Remarks:
  8. 20.
  9. 21.

    Dolly “Bad Shape” Data Place of Origin: Characteristics: Associates: Contract

    Changes Production Faults Separated Dev Teams Difficult to prevent with test Remarks:
  10. 23.
  11. 24.
  12. 25.

    Logan “404” Noloaden Place of Origin: Characteristics: Associates: Flaky Infrastructre

    404, is undefined The Internet Verify load before invoking external functions. Remarks:
  13. 27.
  14. 28.
  15. 29.

    Mabrowser Crashin Place of Origin: Characteristics: Associates: Detached Elements Slow

    Perf, Crashing Clientside Rendering Periodic scanning for memory leaks. Remarks: