- 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:>=400
shows responses with status greater than or equal to 400 - Filter
response:403
shows 403 responses - Filter
agent:wget
showswget
clients - Filter
bytes:>1000
shows responses that are greater than 1000 bytes - Filter
remote_ip:*
can be used to sort remote IP addresses in ascending order - Filter
-request:GET
shows 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.