Metadata-Version: 2.4
Name: carconnectivity-plugin-issuetracker
Version: 0.0.1a1
Summary: CarConnectivity plugin for sending runtime logs, errors, API key drift, and environment snapshots to Sentry-compatible issue trackers
Author: Gabriel Sparber
License-Expression: MIT
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Utilities
Classifier: Topic :: System :: Logging
Classifier: Topic :: System :: Monitoring
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: carconnectivity>=0.11.10
Requires-Dist: sentry-sdk>=2.0.0
Dynamic: license-file

# CarConnectivity Issue Tracker Plugin

This plugin collects selected CarConnectivity runtime log records, error records,
API schema drift hints such as unexpected/additional keys, unhandled exceptions,
and a startup environment snapshot. Events can be sent to any issue/error tracker
that accepts Sentry SDK DSNs, including Bugsink and Sentry.

## Recommended Backend

[Bugsink](https://www.bugsink.com/) is the recommended backend for this plugin.
It is Sentry SDK compatible and supports self-hosting. Check the Bugsink website
for current hosting and regional availability details.

## Basic Configuration

For the recommended setup, only configure the DSN. All other settings have
production-oriented defaults.

```json
{
  "type": "issuetracker",
  "disabled": false,
  "config": {
    "dsn": "https://public-key@example-issue-tracker.invalid/1"
  }
}
```

For advanced configuration options, defaults, and privacy details, see
[docs.md](docs.md).

## Default Behavior

- captures `INFO` and higher log records
- sends events to the configured Sentry-compatible DSN
- redacts credentials, usernames, IP addresses, VINs, license plates, and URLs
- attaches environment, version, component, stacktrace, breadcrumb, and user hash metadata
- filters normal startup, MQTT connect/disconnect, and WebUI access logs as event noise

Unhandled main-thread and background-thread exceptions are captured even when no
log record was emitted.

## Local Files

No local event files are written by default. The WebUI status view shows only
aggregate counters.

Set `output_dir` in the advanced config only when local JSON diagnostics should
also be written.

## Advanced Configuration

See [docs.md](docs.md).
