Analyze roku crashlogs and leverage sourcemaps to translate pkg paths into original file paths
npm install roku-report-analyzer





pkg:/source/main.brs(10) or yourcomplib:/components/SomeComponent.xml(12).pkg:/source/main.brs(10)) into source code locations (C:/projects/YourRokuApp/src/source/main.brs(10)).bash
npm install roku-report-analyzer -D
`Usage
$3
A simple project
`bash
npx rra ./crashlogs/AwesomeRokuApp_A50.zip --projects ./projects/AwesomeRokuApp
`$3
rra supports globs for finding crashlogs, and supports zips as well as unzipped folders. You can specify as many globs as you wish.
`bash
npx rra ./app1/crashlogs//.text ../downloads//.text ./crashZips/*.zip --projects ./projects/AwesomeRokuApp
`$3
Perhaps your project is assembled from multiple source projects
`bash
npx rra ./crashlogs/AwesomeRokuApp_A50.zip --projects ./projects/AwesomeRokuApp_base ./projects/AwesomeRokuApp_overrides1 ./projects/AwesomeRokuApp_overrides2
`$3
If you use component libraries, those file paths will be prefixed by the sg_component_libs_provided value from the manifest. By default, we will look for that value in each project's manifest file. However, you can set it manually by adding it to the front of your project path separated by a colon (i.e. somecomplib:./projects/path/to/complib).
`bash
npx rra ./crashlogs/AwesomeRokuApp_A50.zip --projects pkg:./projects/AwesomeRokuApp yourcomplib:./projects/complib
`You can also use javascript string-style regular expressions to match multiple
sg_component_libs_provided prefixes. For example:
`bash
npx rra ./crashlogs/AwesomeRokuApp_A50.zip --projects pkg:./projects/AwesomeRokuApp "(complib1|complib2):./projects/complib"
`$3
You can override the current working directory like this:
`bash
npx rra --cwd C:/wherever ./crashlogs/*/.zip --projects ./projects/CoolApp
`Truncation
Be aware, roku crashlogs will truncate some paths to a max of 120 characters. In this situation, we have no way to properly match paths back to their original locations. For this reason, we recommend that you limit all of your final paths to a maximum of 120 characters.Help
Run the --help command to view all the available options
`bash
npx rra --help
``