railwatch 0.3.6 → 0.4.0
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 +60 -0
- data/{lib/generators/railwatch/install/templates → app/frontend/lib}/railwatch.ts +162 -42
- data/app/models/railwatch/ingest/batch.rb +1 -0
- data/app/models/railwatch/ingest/mapper.rb +12 -0
- data/docs/configuration.md +8 -3
- data/lib/generators/railwatch/install/install_generator.rb +5 -1
- data/lib/railwatch/patches/rake_task.rb +10 -1
- data/lib/railwatch/patches/runner_command.rb +3 -1
- data/lib/railwatch/transport/http.rb +15 -5
- data/lib/railwatch/version.rb +1 -1
- data/lib/railwatch/wire_fixtures.json +856 -0
- data/lib/railwatch.rb +22 -0
- data/lib/tasks/railwatch_tasks.rake +7 -0
- data/public/railwatch/assets/{app-layout-B5Fcdwfz.js → app-layout-DUk54qUM.js} +1 -1
- data/public/railwatch/assets/{app-wordmark-1SRllgHv.js → app-wordmark-DDNuuq5_.js} +1 -1
- data/public/railwatch/assets/{appearance-DbwahDrc.js → appearance-C3LMdsDy.js} +1 -1
- data/public/railwatch/assets/{arrow-up-DwKQcab4.js → arrow-up-DYTCBENO.js} +1 -1
- data/public/railwatch/assets/{auth-layout-DXfxXAN_.js → auth-layout-CzPRawuI.js} +1 -1
- data/public/railwatch/assets/{badge-CApjyWcg.js → badge-s7YDycYg.js} +1 -1
- data/public/railwatch/assets/{braces-kGSgxWnS.js → braces-BFrg-bvp.js} +1 -1
- data/public/railwatch/assets/{card-BaJ8kNkp.js → card-DiW-JhK3.js} +1 -1
- data/public/railwatch/assets/{chart-hover-XYPNE2CX.js → chart-hover-DMWx5-Rs.js} +1 -1
- data/public/railwatch/assets/{chart-Xnrz1Nqw.js → chart-nsdZV0Dv.js} +1 -1
- data/public/railwatch/assets/{chart-panel-BYk68mJJ.js → chart-panel-BlirnMrQ.js} +1 -1
- data/public/railwatch/assets/{checkbox-Bf41R8W6.js → checkbox-C2AqEZXX.js} +1 -1
- data/public/railwatch/assets/{code-a-9sh36A.js → code-DVJtYP7h.js} +1 -1
- data/public/railwatch/assets/{copy-block-zykZWQym.js → copy-block-D1myf7is.js} +1 -1
- data/public/railwatch/assets/{copy-id-b6CW5ESL.js → copy-id-CyRCMfdH.js} +1 -1
- data/public/railwatch/assets/{cursor-load-more-0cHzbTPT.js → cursor-load-more-JfSVBn9C.js} +1 -1
- data/public/railwatch/assets/{data-table-IvA7xvrK.js → data-table-CwtPkw_i.js} +1 -1
- data/public/railwatch/assets/{edit-7lmf3k80.js → edit-BvTugIpj.js} +1 -1
- data/public/railwatch/assets/{edit-ZKE15r-F.js → edit-DvpDUM-t.js} +1 -1
- data/public/railwatch/assets/{edit-DTtRV1fO.js → edit-fB83T9Yh.js} +1 -1
- data/public/railwatch/assets/{empty-state-BFTnQ2oT.js → empty-state-CshhuRUU.js} +1 -1
- data/public/railwatch/assets/{env-layout-erSDpIXg.js → env-layout-Dkp_4NvM.js} +1 -1
- data/public/railwatch/assets/{execution-path-Di5uUHi-.js → execution-path-CdEerUGH.js} +1 -1
- data/public/railwatch/assets/{filter-bar-Btm__gQi.js → filter-bar-BMHf8xBb.js} +1 -1
- data/public/railwatch/assets/{flamegraph-C-mZdqa7.js → flamegraph-uYWk1Yov.js} +1 -1
- data/public/railwatch/assets/{frames-KZBsjg6-.js → frames-B5ZECkvt.js} +1 -1
- data/public/railwatch/assets/{google-sign-in-button-DJRoD72g.js → google-sign-in-button-CAvsXYb4.js} +1 -1
- data/public/railwatch/assets/{index-CeqMDByC.js → index-1-78ZewP.js} +1 -1
- data/public/railwatch/assets/{index-P_e_cI0O.js → index-B-qRsj0W.js} +1 -1
- data/public/railwatch/assets/{index-kNhZPLVj.js → index-B4IRsZXK.js} +1 -1
- data/public/railwatch/assets/{index-QyHE9WsU.js → index-BIZsdfdM.js} +1 -1
- data/public/railwatch/assets/{index-EGU__DOB.js → index-BIom4V2g.js} +1 -1
- data/public/railwatch/assets/{index-Bot7kHMA.js → index-BMgA9NNc.js} +1 -1
- data/public/railwatch/assets/{index-CX8Br7m9.js → index-BpnfuXi-.js} +1 -1
- data/public/railwatch/assets/{index-D4968-TC.js → index-Bw_ByIps.js} +1 -1
- data/public/railwatch/assets/{index-CU6yhEyt.js → index-C7bU7oUF.js} +1 -1
- data/public/railwatch/assets/{index-Z1c4nFL0.js → index-CAkCcAty.js} +1 -1
- data/public/railwatch/assets/{index-B-bSm1jB.js → index-CRShH-fR.js} +1 -1
- data/public/railwatch/assets/{index-DBTxQw77.js → index-CZWzIE8F.js} +1 -1
- data/public/railwatch/assets/{index-Cj3_jD1E.js → index-CaJvo0Oc.js} +1 -1
- data/public/railwatch/assets/{index-HCJmFcZu.js → index-CdM3F3jz.js} +1 -1
- data/public/railwatch/assets/{index-DcItJxa5.js → index-ClG89uia.js} +1 -1
- data/public/railwatch/assets/{index-CAzQkw-h.js → index-ClJtZh5Q.js} +1 -1
- data/public/railwatch/assets/{index-Bjw4sTXU.js → index-Czq2bi1U.js} +1 -1
- data/public/railwatch/assets/{index-CP6jrrPT.js → index-D-O1LUPq.js} +1 -1
- data/public/railwatch/assets/{index-CYYmZpZu.js → index-DJIXGkfB.js} +1 -1
- data/public/railwatch/assets/{index-BAkZNNEh.js → index-DMcsT2ES.js} +1 -1
- data/public/railwatch/assets/{index-wOj5j0KC.js → index-DVUwgfqP.js} +1 -1
- data/public/railwatch/assets/{index-DAEzO_vq.js → index-DWMKU6mG.js} +1 -1
- data/public/railwatch/assets/{index-BWSyQRZI.js → index-DYrF-A96.js} +1 -1
- data/public/railwatch/assets/{index-BsrCnQqg.js → index-DcuyMiuG.js} +1 -1
- data/public/railwatch/assets/{index-BoTOVM0v.js → index-DpWQMikK.js} +1 -1
- data/public/railwatch/assets/{index-CIUl9POV.js → index-DuGGTdIJ.js} +1 -1
- data/public/railwatch/assets/{index-uHBVO8Lh.js → index-DzoUj38Q.js} +1 -1
- data/public/railwatch/assets/{index-CBJZQgHA.js → index-QxAKxnHK.js} +1 -1
- data/public/railwatch/assets/{index-9LL_C3eG.js → index-X13K9BbO.js} +1 -1
- data/public/railwatch/assets/{index-DEfu_YvU.js → index-Zf9xXwq7.js} +1 -1
- data/public/railwatch/assets/{index-Bo8hrjbs.js → index-dKn1tKSX.js} +1 -1
- data/public/railwatch/assets/{index-DCAho97K.js → index-fA7h22qS.js} +1 -1
- data/public/railwatch/assets/{index-BtSlLmkg.js → index-iVNm3uzI.js} +1 -1
- data/public/railwatch/assets/{index-B0VXzXYG.js → index-n16aviHx.js} +1 -1
- data/public/railwatch/assets/{index-DXUwhSCQ.js → index-vC9KU2bt.js} +1 -1
- data/public/railwatch/assets/{inertia-Degv_G9N.js → inertia-CUTKXjxg.js} +3 -3
- data/public/railwatch/assets/{input-error-C6SqO_iU.js → input-error-C8ycyeD0.js} +1 -1
- data/public/railwatch/assets/{json-viewer-DcQIxT86.js → json-viewer-CJECqZ0l.js} +1 -1
- data/public/railwatch/assets/{klass-WgQEfWpo.js → klass-Br9dng39.js} +1 -1
- data/public/railwatch/assets/{label-B_vK19tR.js → label-B32Ks8n7.js} +1 -1
- data/public/railwatch/assets/{layout-C8q7GUlZ.js → layout-5ZhRtywp.js} +1 -1
- data/public/railwatch/assets/{live-dot-DaXEbkXo.js → live-dot-Bb1UYT9F.js} +1 -1
- data/public/railwatch/assets/{nav-BnD5XArZ.js → nav-XUcwnBso.js} +1 -1
- data/public/railwatch/assets/{new-BL9OqXHe.js → new-0xyEF6NL.js} +1 -1
- data/public/railwatch/assets/{new-DIjwu2jF.js → new-CV011uLi.js} +1 -1
- data/public/railwatch/assets/{new-BqP0NhOF.js → new-CdvlEBjJ.js} +1 -1
- data/public/railwatch/assets/{new-BhRnQn4w.js → new-D9-ORiNW.js} +1 -1
- data/public/railwatch/assets/{new-uxMnBtoY.js → new-GIkDYLt8.js} +1 -1
- data/public/railwatch/assets/{new-CWP3wtwt.js → new-YBWOo9_V.js} +1 -1
- data/public/railwatch/assets/{onboarding-C_Y3xTsH.js → onboarding-BqEuP-Ml.js} +1 -1
- data/public/railwatch/assets/{origin-identity-CNhOnfBa.js → origin-identity-DrJ4D2TX.js} +1 -1
- data/public/railwatch/assets/{percentile-picker-BujVEhP6.js → percentile-picker-_wllqYoJ.js} +1 -1
- data/public/railwatch/assets/{relative-time-6CoKr1lN.js → relative-time-CV7V8aSP.js} +1 -1
- data/public/railwatch/assets/{release-health-1Qzc_XhT.js → release-health-DRNLZtT7.js} +1 -1
- data/public/railwatch/assets/{route-xqgYjOwJ.js → route-D9slUz_a.js} +1 -1
- data/public/railwatch/assets/{segmented-CVKq2Xpa.js → segmented-Bj70Htrs.js} +1 -1
- data/public/railwatch/assets/{select-CsmSXsJ4.js → select-DJBZX2ky.js} +1 -1
- data/public/railwatch/assets/{separator-CrM10Oot.js → separator-UUo0bkyc.js} +1 -1
- data/public/railwatch/assets/{series-chart-D33UhdG2.js → series-chart-C1YrNlID.js} +1 -1
- data/public/railwatch/assets/{show-zxVxhUel.js → show-BQtEcTeD.js} +1 -1
- data/public/railwatch/assets/{show-B0nHy31L.js → show-BT3tKCgP.js} +1 -1
- data/public/railwatch/assets/{show-DZwcZZrz.js → show-BoG7jcwk.js} +1 -1
- data/public/railwatch/assets/{show-ixK2r2f1.js → show-BpyCRL-I.js} +1 -1
- data/public/railwatch/assets/{show-rysBbvt-.js → show-C0uC3gnA.js} +1 -1
- data/public/railwatch/assets/{show-B3izvRdU.js → show-COfP8yWt.js} +1 -1
- data/public/railwatch/assets/{show-B7NhcWgp.js → show-CefJwag7.js} +1 -1
- data/public/railwatch/assets/{show-8H9WAGav.js → show-ChDJZjoj.js} +1 -1
- data/public/railwatch/assets/{show-CJMeX75E.js → show-D7IL22Hy.js} +1 -1
- data/public/railwatch/assets/{show-DUwQlohF.js → show-D7tP881O.js} +1 -1
- data/public/railwatch/assets/{show-BM-E2iYc.js → show-DR6u4CR7.js} +1 -1
- data/public/railwatch/assets/{show-CMisHNAI.js → show-DnBCvlnd.js} +1 -1
- data/public/railwatch/assets/{show-BlNR3ZOZ.js → show-DoCg0ifP.js} +1 -1
- data/public/railwatch/assets/{show-9jDeBNpc.js → show-GruxlCov.js} +1 -1
- data/public/railwatch/assets/{show-CvNV23gH.js → show-Pu3Iehw5.js} +1 -1
- data/public/railwatch/assets/{show-DMZlwzL_.js → show-TTCk2Met.js} +1 -1
- data/public/railwatch/assets/{show-CQ4Ze-Un.js → show-yQipmite.js} +1 -1
- data/public/railwatch/assets/{sort-header-CKj_7G3U.js → sort-header-CqQQhaxg.js} +1 -1
- data/public/railwatch/assets/{sparkline-cell-Ckg29yVq.js → sparkline-cell-BwdBz0yv.js} +1 -1
- data/public/railwatch/assets/{stat-TxvoBiC8.js → stat-IghK3WjD.js} +1 -1
- data/public/railwatch/assets/{status-badge-5NCVJHjo.js → status-badge-XYUN9gUA.js} +1 -1
- data/public/railwatch/assets/{tenant-path-B5ZRK4x3.js → tenant-path-SxnZbfU1.js} +1 -1
- data/public/railwatch/assets/{text-link-BPllRj0F.js → text-link-NCL9N5D5.js} +1 -1
- data/public/railwatch/assets/{textarea-DtD5yZp_.js → textarea-DhI1dmQa.js} +1 -1
- data/public/railwatch/assets/{timeline-DZz5ZnHN.js → timeline-CLAwsAlo.js} +1 -1
- data/public/railwatch/assets/{transition-Ds6Cakuc.js → transition-DpTb9Yiv.js} +1 -1
- data/public/railwatch/assets/{use-clipboard-BLjjYH8V.js → use-clipboard-D5i6e5kf.js} +1 -1
- data/public/railwatch/assets/{use-live-GKze1mNC.js → use-live-V-slSdFJ.js} +1 -1
- data/public/railwatch/manifest.json +1287 -1287
- metadata +117 -116
data/lib/railwatch.rb
CHANGED
|
@@ -599,6 +599,28 @@ module Railwatch
|
|
|
599
599
|
File.expand_path("../db/#{database}_migrate", __dir__)
|
|
600
600
|
end
|
|
601
601
|
|
|
602
|
+
# The one browser client, relative to the gem root. The dashboard bundle
|
|
603
|
+
# is built from it, the install generator copies it, the gem ships it (the
|
|
604
|
+
# only app/frontend file it does), and a host with its own frontend build
|
|
605
|
+
# (Railwatch Cloud) imports it from browser_client_path.
|
|
606
|
+
BROWSER_CLIENT = "app/frontend/lib/railwatch.ts"
|
|
607
|
+
|
|
608
|
+
def self.browser_client_path
|
|
609
|
+
File.expand_path("../#{BROWSER_CLIENT}", __dir__)
|
|
610
|
+
end
|
|
611
|
+
|
|
612
|
+
# One realistic wire record per record type, exactly as the gem's own
|
|
613
|
+
# subscribers emit it, generated by spec/railwatch/wire_fixtures_spec.rb.
|
|
614
|
+
# A receiver tests its mapper against these instead of hand-writing what
|
|
615
|
+
# it thinks the gem sends.
|
|
616
|
+
def self.wire_fixtures_path
|
|
617
|
+
File.expand_path("../lib/railwatch/wire_fixtures.json", __dir__)
|
|
618
|
+
end
|
|
619
|
+
|
|
620
|
+
def self.wire_fixtures
|
|
621
|
+
@wire_fixtures ||= JSON.parse(File.read(wire_fixtures_path)).freeze
|
|
622
|
+
end
|
|
623
|
+
|
|
602
624
|
# Raised when the engine's models are used in an app whose database.yml
|
|
603
625
|
# has no entry for them. They must never fall back to the host's primary
|
|
604
626
|
# connection: the telemetry tables are unprefixed (`sessions`, `visits`,
|
|
@@ -612,3 +612,10 @@ namespace :railwatch do
|
|
|
612
612
|
res.is_a?(Net::HTTPSuccess) ? puts("Deploy #{deploy} recorded") : abort("Deploy failed: #{res.code} #{res.body}")
|
|
613
613
|
end
|
|
614
614
|
end
|
|
615
|
+
|
|
616
|
+
namespace :railwatch do
|
|
617
|
+
desc "Regenerate lib/railwatch/wire_fixtures.json from the gem's own subscribers"
|
|
618
|
+
task :wire_fixtures do
|
|
619
|
+
sh({ "RAILWATCH_WRITE_WIRE_FIXTURES" => "1" }, "bundle exec rspec spec/railwatch/wire_fixtures_spec.rb -e 'matches the shipped'")
|
|
620
|
+
end
|
|
621
|
+
end
|