[script.module.pyrollbar@matrix] 1.4.0.1+v1_3_0 - #2883
Conversation
|
| Filename | Overview |
|---|---|
| script.module.pyrollbar/lib/rollbar/init.py | Rolls the notifier core back to 1.3.0, but exposes failed event payloads in logs and contains an undefined fallback variable that can crash agent initialization. |
| script.module.pyrollbar/lib/rollbar/lib/traverse.py | Restores 1.3.0 traversal behavior, including changed custom-handler matching, without a concrete affected repository caller. |
| script.module.pyrollbar/addon.xml | Publishes the rollback under version 1.4.0.1+v1_3_0 and documents its Windows-compatibility purpose. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Application reports event] --> B[Serialize Rollbar payload]
B --> C[Send event to Rollbar]
C --> D{HTTP response}
D -->|429| E[Log complete serialized params]
D -->|413| F[Decode and log complete payload]
D -->|Other| G[Normal response handling]
Reviews (1): Last reviewed commit: "[script.module.pyrollbar] 1.4.0.1+v1_3_0" | Re-trigger Greptile
| if resp.status_code == 429: | ||
| if SETTINGS['log_all_rate_limited_items'] or not last_response_was_429: | ||
| log.warning("Rollbar: over rate limit, data was dropped.") | ||
| if SETTINGS['log_payload_on_error']: | ||
| log.warning("Payload was: %r", params) | ||
| log.warning("Rollbar: over rate limit, data was dropped. Payload was: %r", params) |
There was a problem hiding this comment.
Payload logging bypasses opt-out
When Rollbar returns HTTP 429 or 413 after an installation configured log_payload_on_error=False under 1.4.0, these branches unconditionally copy the complete serialized event into application logs, exposing captured request, exception, and local-variable data to log readers. How this was verified: The serialized event is passed to _parse_response, where both changed response branches log it without the former configuration guard.
| log.error("Provided agent log file does not end with .rollbar, which it must. " | ||
| "Using default instead.") | ||
| log_file = 'log.rollbar' | ||
| log_file = DEFAULTS['agent.log_file'] |
There was a problem hiding this comment.
Agent fallback references undefined variable
When handler="agent" is initialized with a log filename that does not end in .rollbar, this fallback evaluates the undefined DEFAULTS name, raising NameError instead of initializing the agent logger with the default filename.
| log_file = DEFAULTS['agent.log_file'] | |
| log_file = 'log.rollbar' |
Add-on details:
General
Code location
Python notifier for reporting exceptions, errors, and log messages to Rollbar.
Description of changes:
Rollback to rollbar 1.3.0 for windows compatability. This version has been released after an erroneous 1.4.0 upgrade.
This version number was discussed with @romanvm here.
Checklist: