AppMaps are files containing JSON data representing the runtime behavior of an application. AppMaps can be displayed as visual maps, showing everything that the application did at runtime while AppMap was recording.
AppMaps contain information about the HTTP requests, function calls, SQL database queries, and other important events that occurred while it was being recorded.
AppMaps can be analyzed and searched to follow execution traces, locate dependencies, debug behavior, and much more. AppMaps can also be browsed and navigated in a visual way when exploring and learning unfamiliar code.
A single AppMap contains all the information recorded during a specific run of one application (for example, a running instance of a microservice).
Once AppMaps are generated, AppMap Analysis will immediately scan those recordings for flaws. AppMap Analysis can find security gaps, performance issues, problematic database queries, reliability issues, and more.
Unlike traditional tools, scans are almost instantaneous. Better yet, where other technologies would only identify that a security issue exists somewhere, AppMap Analysis will also show you exactly where your flaws are located. AppMap Analysis has definitive knowledge of how your application behaved at runtime, so it will lead you right to the lines of code where the flaw exists.
Because AppMaps are self-contained files, they are easy to share with team members. Sharing an AppMap with a team member allows them to browse the same runtime behaviors that you can see, but without them having the burden of setting up the same runtime environment or execution commands.
AppMaps can also be generated within your CI system with each test run, allowing any team member to view up-to-date maps of your application's dynamic behaviors.
Supported application framworks include Spring, Mocha, Next.js, Express.js, Django, and Rails.
AppMap plugins are available for VS Code and JetBrains editors (IntelliJ, PyCharm, WebStorm, and more).
The AppMap code editors provide a highly integrated experience for AppMaps, but maps can also be recorded without the AppMap native editor extensions.