- It can be customized to highlight important fields.
- Kubernettes objects can be analyzed.
- Click https://allproxy.github.io/json-log-viewer/
- Click ? in the upper right and click the Edit JavaScript button to define JavaScript code to extract the Date, Kind, Message from your log records.
- Online web application served by GitHub Pages.
- Displays easy to read compact list of log entries.
- Expands to show the full prettified JSON.
- Fields are customizable.
- Filtering and highlighted search matches.
- Log levels are colorized.
- Display human readable or UTC timestamps.
- Supports JSON lines and JSON file formats.
- Analyze Kubernettes objects.
- Clone repo.
npm install
npm start# Opens tab in your default browser- Click
?in upper right for help.
The JSON Log Viewer uses the allproxy package.
To update the allproxy npm package run:
npm update
NOTE*:
It is recommended that Use hardware acceleration when available is disabled on Chrome.
The JSON output generated by kubectl get -o json can be imported and analyzed by json-log-viewer.
- Use kubectl to get list of JSON Kubenettes objects:
kubectl get pods,deployments,configmaps,secrets -A -o json 
- Import the JSON output into json-log-viewer.
Advanced JSON field and boolean filters can be used to find relevant log records.
Example filters:
- Filter response:>=400shows responses with status greater than or equal to 400
- Filter response:403shows 403 responses
- Filter agent:wgetshowswgetclients
- Filter bytes:>1000shows responses that are greater than 1000 bytes
- Filter remote_ip:*can be used to sort remote IP addresses in ascending order
- Filter -request:GETshows non-GET requests
Filter response:>=400 shows responses with status

Filter response:403 shows 403 responses

Filter agent:wget shows wget clients

Filter bytes:>1000 shows responses that are greater

Filter remote_ip:* can be used to sort remote IP addresses in ascending order

Filter -request:GET shows non-GET requests

User documentation is integrated into the app.  Click ? in upper right corner.

To update the Log Viewer version to the latest:
- npm update # this update the allproxy package
- ./copyBuildFromAllProxy.sh
- Create branch matching the allproxy version.
The docs/index.html needs to be modified so the GitHub Pages app will render properly:
- 
These lines must be added to the start of the tag:<link rel="shortcut icon" type="image/x-icon" href="favicon.ico"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
- 
Remove '/' from href and src properties. 
- Modify any of these config files:
- jsonQueries.json
- queries
- briefJsonFields.json
- jsonFields
- jsonSubQueries.json
- jsonLogScript
 
- Run node createApFileSystemJson.js to build a new docs apFileSystem.json file.
This code is licensed under the MIT License.
