vectra-client 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +36 -0
- data/docs/_layouts/page.html +1 -0
- data/docs/guides/monitoring.md +860 -0
- data/docs/guides/runbooks/cache-issues.md +267 -0
- data/docs/guides/runbooks/high-error-rate.md +152 -0
- data/docs/guides/runbooks/high-latency.md +287 -0
- data/docs/guides/runbooks/pool-exhausted.md +216 -0
- data/lib/vectra/circuit_breaker.rb +336 -0
- data/lib/vectra/client.rb +2 -0
- data/lib/vectra/health_check.rb +254 -0
- data/lib/vectra/instrumentation/honeybadger.rb +128 -0
- data/lib/vectra/instrumentation/sentry.rb +117 -0
- data/lib/vectra/logging.rb +242 -0
- data/lib/vectra/rate_limiter.rb +304 -0
- data/lib/vectra/version.rb +1 -1
- data/lib/vectra.rb +4 -0
- metadata +12 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8a0a1971b5aaa4e71cce684542a9baa8b5c43a47b5e9faa8231bb3dbf5ebe2d1
|
|
4
|
+
data.tar.gz: d80c394c3cfbc4b94e42e649c26333238feb0e946570e6cb918c13c73d491d37
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e422697e86cd942b25d49b88a15254789754dea5646fe5407989c4915f4bb4fc3f36a84f19d38a2409bf684c7ce67bde02d012590e909cb980777e35beabf1c1
|
|
7
|
+
data.tar.gz: 5ef94bacfffe1ce6f67faeaa92febf739b498a14675661612058104dc7d1119e59dc0284a1c32338b08cd73c8cc4aac63e0be249c8250e9d78699dd45eb93b3d
|
data/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,42 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Proactive Rate Limiting** (`Vectra::RateLimiter`)
|
|
13
|
+
- Token bucket algorithm for smooth rate limiting
|
|
14
|
+
- Burst support for handling traffic spikes
|
|
15
|
+
- Per-provider rate limiter registry
|
|
16
|
+
- `RateLimitedClient` wrapper for automatic throttling
|
|
17
|
+
- Prevents API rate limit errors before they occur
|
|
18
|
+
|
|
19
|
+
- **Structured JSON Logging** (`Vectra::JsonLogger`)
|
|
20
|
+
- Machine-readable JSON log format
|
|
21
|
+
- Automatic operation logging via instrumentation
|
|
22
|
+
- Custom metadata support
|
|
23
|
+
- Integration with standard Ruby Logger via `JsonFormatter`
|
|
24
|
+
- Log levels: debug, info, warn, error, fatal
|
|
25
|
+
|
|
26
|
+
- **Health Check Functionality** (`Vectra::HealthCheck`)
|
|
27
|
+
- Built-in `client.health_check` method
|
|
28
|
+
- Connectivity and latency testing
|
|
29
|
+
- Optional index statistics inclusion
|
|
30
|
+
- Pool health checking for pgvector
|
|
31
|
+
- `AggregateHealthCheck` for multi-provider setups
|
|
32
|
+
- JSON-serializable results
|
|
33
|
+
|
|
34
|
+
- **Error Tracking Integrations**
|
|
35
|
+
- Sentry adapter with breadcrumbs, context, and fingerprinting
|
|
36
|
+
- Honeybadger adapter with severity tags and configurable notifications
|
|
37
|
+
- Automatic error context and grouping
|
|
38
|
+
|
|
39
|
+
- **Circuit Breaker Pattern** (`Vectra::CircuitBreaker`)
|
|
40
|
+
- Three-state circuit (closed, open, half-open)
|
|
41
|
+
- Automatic failover with fallback support
|
|
42
|
+
- Per-provider circuit registry
|
|
43
|
+
- Thread-safe implementation
|
|
44
|
+
- Configurable failure/success thresholds
|
|
45
|
+
|
|
10
46
|
## [0.3.0] - 2025-01-08
|
|
11
47
|
|
|
12
48
|
### Added
|
data/docs/_layouts/page.html
CHANGED
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
<li><a href="{{ site.baseurl }}/guides/installation" class="tma-sidebar__link {% if page.url == '/guides/installation/' %}tma-sidebar__link--active{% endif %}">Installation</a></li>
|
|
36
36
|
<li><a href="{{ site.baseurl }}/guides/getting-started" class="tma-sidebar__link {% if page.url == '/guides/getting-started/' %}tma-sidebar__link--active{% endif %}">Quick Start</a></li>
|
|
37
37
|
<li><a href="{{ site.baseurl }}/guides/performance" class="tma-sidebar__link {% if page.url == '/guides/performance/' %}tma-sidebar__link--active{% endif %}">Performance</a></li>
|
|
38
|
+
<li><a href="{{ site.baseurl }}/guides/monitoring" class="tma-sidebar__link {% if page.url == '/guides/monitoring/' %}tma-sidebar__link--active{% endif %}">Monitoring</a></li>
|
|
38
39
|
</ul>
|
|
39
40
|
</div>
|
|
40
41
|
|