railwatch 0.2.1 → 0.2.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: acb264bad21d7d7fb10648e8e67ed6ab0b3253cc4a36a0a0370e3c993bc8cfca
4
- data.tar.gz: 77eb54e355a113da4947ed2f83c6dd094f64729f998ccb035e5d4644e11c6d2a
3
+ metadata.gz: c0487618698d9dc329892ddabb4762ead8838ce593052b9fcb9fe684163dca15
4
+ data.tar.gz: f0704d125a03f31aee2a0a3b60f40413335703e6eb20296e6153885d7ae9b6fb
5
5
  SHA512:
6
- metadata.gz: eec5c43f9a2c71846f12d758f1738b576798ab37582a7be0ba28d829e2bc54ae2a8272275c4741a2956bc2e39992eacf3a0493965a69cf94a08142272cfe90b9
7
- data.tar.gz: 0cf77dd4e1740c4c919c00bfd0dc3702aaf54a751c8620ba090ab316367b6279c3d7a4cc5b39ac35bc11ab502354699ba93227178365c015e3cf0f64b4cdb77c
6
+ metadata.gz: fefe712b31d5b060d1f17856da5e7e05ce1303204ecc8c57b4a8ea59a1f2ea0e9bf427ac66b36201450841802ea7327bf17e9a139e5c448fb0deff851ae5c33d
7
+ data.tar.gz: 41119e84bb12b026516e3cd48dc7fd36835f32a88574e3ad25e8244dd5396925dccf9205ef41171943997adb57062e579784b76b9b3b6e7b63dedd69c1aede52
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.2 (2026-09-18)
4
+
5
+ - README: describe embedded mode. The gem has had two destinations since
6
+ 0.2.0, and the front page still read as though Railwatch Cloud were the
7
+ only one.
8
+
3
9
  ## 0.2.1 (2026-09-18)
4
10
 
5
11
  - No change to the gem itself. This release exists to run the automated
data/README.md CHANGED
@@ -2,10 +2,14 @@
2
2
 
3
3
  First-class monitoring for Rails. One gem instruments requests, jobs,
4
4
  scheduled tasks, commands, queries, exceptions, cache, mail, broadcasts,
5
- outgoing HTTP, storage, views, and logs, links them into one trace per
6
- execution, and ships them to Railwatch Cloud for about half a millisecond
7
- per request plus tens of microseconds per query, with zero writes to your
8
- database.
5
+ outgoing HTTP, storage, views, and logs, and links them into one trace
6
+ per execution, for about half a millisecond per request plus tens of
7
+ microseconds per query, with zero writes to your database.
8
+
9
+ Send that to Railwatch Cloud, or keep all of it inside the app:
10
+ [embedded mode](docs/embedded.md) serves the same dashboard at
11
+ `/railwatch` out of two SQLite files your app owns, with no token, no
12
+ Node, no Redis and no job worker.
9
13
 
10
14
  ## Install
11
15
 
@@ -67,6 +71,28 @@ expect { get "/widgets" }.to have_railwatch_queries(at_most: 6)
67
71
  expect { get "/widgets" }.not_to have_railwatch_n_plus_one
68
72
  ```
69
73
 
74
+ ## Embedded mode
75
+
76
+ `--local` keeps everything inside the application. Telemetry goes to two
77
+ SQLite files it owns -- `railwatch` for issues, comments and saved views,
78
+ `railwatch_telemetry` for what the app reports -- and the dashboard is
79
+ served at `/railwatch` from a bundle shipped inside the gem. Nothing
80
+ leaves the machine, and there is nothing else to run.
81
+
82
+ Puma forks a single writer process (`plugin :railwatch`, which the
83
+ installer adds) that owns both files. The web workers hand it batches
84
+ over a Unix socket instead of writing SQLite on their own threads, and it
85
+ runs the maintenance clock too, so exception grouping, rollups, retention
86
+ and threshold scans happen without a queue.
87
+
88
+ That dashboard reads every query, log line and exception the app
89
+ produced, so it is closed by default the way Mission Control Jobs is:
90
+ HTTP Basic is on with no credentials, and every request is 401 until you
91
+ set them with `bin/rails railwatch:authentication:configure`. Apps that
92
+ would rather use their own session hand it a `dashboard_user` resolver
93
+ instead. [Embedded mode](docs/embedded.md) covers all of it, including
94
+ upgrades and what it costs to store.
95
+
70
96
  ## Documentation
71
97
 
72
98
  - [Getting started](docs/getting-started.md) — five-minute install for a
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Railwatch
4
- VERSION = "0.2.1"
4
+ VERSION = "0.2.2"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: railwatch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cole Robertson