rails_error_dashboard 0.8.4 → 0.9.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/README.md +35 -0
- data/app/controllers/rails_error_dashboard/application_controller.rb +107 -4
- data/app/controllers/rails_error_dashboard/errors_controller.rb +91 -73
- data/app/controllers/rails_error_dashboard/locales_controller.rb +87 -0
- data/app/helpers/rails_error_dashboard/application_helper.rb +20 -14
- data/app/helpers/rails_error_dashboard/backtrace_helper.rb +15 -6
- data/app/helpers/rails_error_dashboard/i18n_helper.rb +154 -0
- data/app/helpers/rails_error_dashboard/mailer_i18n_helper.rb +69 -0
- data/app/helpers/rails_error_dashboard/overview_helper.rb +18 -6
- data/app/helpers/rails_error_dashboard/user_agent_helper.rb +25 -11
- data/app/jobs/rails_error_dashboard/application_job.rb +5 -0
- data/app/jobs/rails_error_dashboard/baseline_alert_job.rb +18 -16
- data/app/jobs/rails_error_dashboard/concerns/localized_job.rb +83 -0
- data/app/jobs/rails_error_dashboard/discord_error_notification_job.rb +4 -2
- data/app/jobs/rails_error_dashboard/email_error_notification_job.rb +4 -2
- data/app/jobs/rails_error_dashboard/pagerduty_error_notification_job.rb +6 -2
- data/app/jobs/rails_error_dashboard/scheduled_digest_job.rb +8 -3
- data/app/jobs/rails_error_dashboard/slack_error_notification_job.rb +6 -4
- data/app/jobs/rails_error_dashboard/storm_notification_job.rb +26 -8
- data/app/jobs/rails_error_dashboard/webhook_error_notification_job.rb +4 -2
- data/app/mailers/rails_error_dashboard/application_mailer.rb +14 -0
- data/app/mailers/rails_error_dashboard/digest_mailer.rb +18 -2
- data/app/mailers/rails_error_dashboard/error_notification_mailer.rb +19 -2
- data/app/views/layouts/rails_error_dashboard.html.erb +255 -92
- data/app/views/rails_error_dashboard/digest_mailer/digest_summary.html.erb +23 -22
- data/app/views/rails_error_dashboard/digest_mailer/digest_summary.text.erb +30 -19
- data/app/views/rails_error_dashboard/error_notification_mailer/error_alert.html.erb +18 -16
- data/app/views/rails_error_dashboard/error_notification_mailer/error_alert.text.erb +21 -14
- data/app/views/rails_error_dashboard/errors/_ai_help_panel.html.erb +11 -7
- data/app/views/rails_error_dashboard/errors/_breadcrumbs_group.html.erb +45 -38
- data/app/views/rails_error_dashboard/errors/_co_occurring_errors.html.erb +17 -14
- data/app/views/rails_error_dashboard/errors/_discussion.html.erb +27 -9
- data/app/views/rails_error_dashboard/errors/_error_cascades.html.erb +25 -21
- data/app/views/rails_error_dashboard/errors/_error_info.html.erb +25 -22
- data/app/views/rails_error_dashboard/errors/_error_row.html.erb +24 -12
- data/app/views/rails_error_dashboard/errors/_instance_variables.html.erb +12 -11
- data/app/views/rails_error_dashboard/errors/_issue_section.html.erb +19 -13
- data/app/views/rails_error_dashboard/errors/_llm_summary.html.erb +14 -14
- data/app/views/rails_error_dashboard/errors/_local_variables.html.erb +8 -8
- data/app/views/rails_error_dashboard/errors/_modals.html.erb +60 -52
- data/app/views/rails_error_dashboard/errors/_pattern_insights.html.erb +59 -49
- data/app/views/rails_error_dashboard/errors/_request_context.html.erb +23 -20
- data/app/views/rails_error_dashboard/errors/_show_scripts.html.erb +14 -14
- data/app/views/rails_error_dashboard/errors/_sidebar_metadata.html.erb +118 -93
- data/app/views/rails_error_dashboard/errors/_similar_errors.html.erb +18 -12
- data/app/views/rails_error_dashboard/errors/_source_code.html.erb +20 -5
- data/app/views/rails_error_dashboard/errors/_stats.html.erb +5 -5
- data/app/views/rails_error_dashboard/errors/_timeline.html.erb +7 -7
- data/app/views/rails_error_dashboard/errors/_user_errors_table.html.erb +15 -12
- data/app/views/rails_error_dashboard/errors/actioncable_health_summary.html.erb +25 -25
- data/app/views/rails_error_dashboard/errors/activestorage_health_summary.html.erb +28 -28
- data/app/views/rails_error_dashboard/errors/analytics.html.erb +82 -82
- data/app/views/rails_error_dashboard/errors/cache_health_summary.html.erb +27 -27
- data/app/views/rails_error_dashboard/errors/correlation.html.erb +61 -57
- data/app/views/rails_error_dashboard/errors/database_health_summary.html.erb +64 -65
- data/app/views/rails_error_dashboard/errors/deprecations.html.erb +23 -23
- data/app/views/rails_error_dashboard/errors/diagnostic_dumps.html.erb +48 -36
- data/app/views/rails_error_dashboard/errors/index.html.erb +121 -70
- data/app/views/rails_error_dashboard/errors/job_health_summary.html.erb +30 -30
- data/app/views/rails_error_dashboard/errors/llm_health_summary.html.erb +38 -39
- data/app/views/rails_error_dashboard/errors/n_plus_one_summary.html.erb +28 -25
- data/app/views/rails_error_dashboard/errors/overview.html.erb +45 -39
- data/app/views/rails_error_dashboard/errors/platform_comparison.html.erb +45 -44
- data/app/views/rails_error_dashboard/errors/rack_attack_summary.html.erb +30 -29
- data/app/views/rails_error_dashboard/errors/releases.html.erb +46 -47
- data/app/views/rails_error_dashboard/errors/settings/_value_badge.html.erb +48 -44
- data/app/views/rails_error_dashboard/errors/settings.html.erb +122 -112
- data/app/views/rails_error_dashboard/errors/show.html.erb +44 -37
- data/app/views/rails_error_dashboard/errors/storms.html.erb +30 -24
- data/app/views/rails_error_dashboard/errors/swallowed_exceptions.html.erb +26 -26
- data/app/views/rails_error_dashboard/errors/user_impact.html.erb +31 -30
- data/config/locales/de.yml +2007 -0
- data/config/locales/en.yml +2719 -0
- data/config/locales/es.yml +2079 -0
- data/config/locales/fr.yml +2082 -0
- data/config/locales/it.yml +2060 -0
- data/config/locales/ja.yml +1802 -0
- data/config/locales/pl.yml +2108 -0
- data/config/locales/pt-BR.yml +2064 -0
- data/config/locales/ru.yml +2109 -0
- data/config/locales/uk.yml +2106 -0
- data/config/locales/zh-CN.yml +1791 -0
- data/config/routes.rb +5 -0
- data/db/migrate/20260325000001_fix_swallowed_exceptions_index_for_mysql.rb +9 -3
- data/lib/rails_error_dashboard/commands/batch_delete_errors.rb +3 -1
- data/lib/rails_error_dashboard/commands/batch_mute_errors.rb +4 -2
- data/lib/rails_error_dashboard/commands/batch_resolve_errors.rb +4 -2
- data/lib/rails_error_dashboard/commands/batch_unmute_errors.rb +4 -2
- data/lib/rails_error_dashboard/commands/create_issue.rb +5 -3
- data/lib/rails_error_dashboard/commands/link_existing_issue.rb +4 -2
- data/lib/rails_error_dashboard/commands/log_error.rb +1 -1
- data/lib/rails_error_dashboard/configuration.rb +23 -6
- data/lib/rails_error_dashboard/current.rb +56 -0
- data/lib/rails_error_dashboard/i18n_store.rb +293 -0
- data/lib/rails_error_dashboard/private_backend.rb +213 -0
- data/lib/rails_error_dashboard/services/baseline_alert_payload_builder.rb +89 -22
- data/lib/rails_error_dashboard/services/digest_builder.rb +21 -7
- data/lib/rails_error_dashboard/services/discord_payload_builder.rb +27 -15
- data/lib/rails_error_dashboard/services/error_notification_dispatcher.rb +10 -5
- data/lib/rails_error_dashboard/services/localized_time_formatter.rb +117 -0
- data/lib/rails_error_dashboard/services/notification_helpers.rb +87 -4
- data/lib/rails_error_dashboard/services/pagerduty_payload_builder.rb +22 -5
- data/lib/rails_error_dashboard/services/slack_payload_builder.rb +48 -28
- data/lib/rails_error_dashboard/services/storm_protection/gate.rb +2 -1
- data/lib/rails_error_dashboard/services/webhook_payload_builder.rb +15 -1
- data/lib/rails_error_dashboard/translation.rb +39 -0
- data/lib/rails_error_dashboard/version.rb +1 -1
- data/lib/rails_error_dashboard.rb +4 -0
- data/lib/tasks/error_dashboard.rake +5 -1
- metadata +35 -8
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rails_error_dashboard
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.9.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Anjan Jagirdar
|
|
@@ -169,14 +169,14 @@ dependencies:
|
|
|
169
169
|
requirements:
|
|
170
170
|
- - "~>"
|
|
171
171
|
- !ruby/object:Gem::Version
|
|
172
|
-
version: '
|
|
172
|
+
version: '1.1'
|
|
173
173
|
type: :development
|
|
174
174
|
prerelease: false
|
|
175
175
|
version_requirements: !ruby/object:Gem::Requirement
|
|
176
176
|
requirements:
|
|
177
177
|
- - "~>"
|
|
178
178
|
- !ruby/object:Gem::Version
|
|
179
|
-
version: '
|
|
179
|
+
version: '1.1'
|
|
180
180
|
- !ruby/object:Gem::Dependency
|
|
181
181
|
name: appraisal
|
|
182
182
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -232,9 +232,16 @@ description: 'Own your errors. Own your stack. A fully open-source, self-hosted
|
|
|
232
232
|
dashboard UI (dark/light), multi-channel notifications (Slack, Email, Discord, PagerDuty,
|
|
233
233
|
webhooks), workflow management, advanced analytics, platform detection (iOS/Android/Web/API),
|
|
234
234
|
and two-way issue sync with GitHub, GitLab, Codeberg, and Linear. Also: LLM observability,
|
|
235
|
-
AI-powered debugging help, and OpenTelemetry span export.
|
|
236
|
-
|
|
237
|
-
|
|
235
|
+
AI-powered debugging help, and OpenTelemetry span export. The dashboard, mailers
|
|
236
|
+
and notification payloads are translated into 11 languages: English, German, Spanish,
|
|
237
|
+
French, Brazilian Portuguese, Italian, Polish, Russian, Ukrainian, Japanese, and
|
|
238
|
+
Simplified Chinese — 1,515 source strings, set via config.dashboard_locale with
|
|
239
|
+
a per-user picker. RED translates through its own private I18n backend and never
|
|
240
|
+
mutates your app''s I18n; a missing translation falls back to English. Backtraces,
|
|
241
|
+
exception names and webhook payload keys stay English by design. The ten non-English
|
|
242
|
+
locales are machine-translated and not yet reviewed by native speakers. 5-minute
|
|
243
|
+
setup, works out-of-the-box. Rails 7.0-8.1, Ruby 3.2-4.0. BETA: API may change before
|
|
244
|
+
v1.0.0. Live demo: https://rails-error-dashboard.anjan.dev (gandalf/youshallnotpass)'
|
|
238
245
|
email:
|
|
239
246
|
- anjan.jagirdar@gmail.com
|
|
240
247
|
executables: []
|
|
@@ -246,9 +253,12 @@ files:
|
|
|
246
253
|
- Rakefile
|
|
247
254
|
- app/controllers/rails_error_dashboard/application_controller.rb
|
|
248
255
|
- app/controllers/rails_error_dashboard/errors_controller.rb
|
|
256
|
+
- app/controllers/rails_error_dashboard/locales_controller.rb
|
|
249
257
|
- app/controllers/rails_error_dashboard/webhooks_controller.rb
|
|
250
258
|
- app/helpers/rails_error_dashboard/application_helper.rb
|
|
251
259
|
- app/helpers/rails_error_dashboard/backtrace_helper.rb
|
|
260
|
+
- app/helpers/rails_error_dashboard/i18n_helper.rb
|
|
261
|
+
- app/helpers/rails_error_dashboard/mailer_i18n_helper.rb
|
|
252
262
|
- app/helpers/rails_error_dashboard/overview_helper.rb
|
|
253
263
|
- app/helpers/rails_error_dashboard/user_agent_helper.rb
|
|
254
264
|
- app/jobs/rails_error_dashboard/add_issue_recurrence_comment_job.rb
|
|
@@ -256,6 +266,7 @@ files:
|
|
|
256
266
|
- app/jobs/rails_error_dashboard/async_error_logging_job.rb
|
|
257
267
|
- app/jobs/rails_error_dashboard/baseline_alert_job.rb
|
|
258
268
|
- app/jobs/rails_error_dashboard/close_linked_issue_job.rb
|
|
269
|
+
- app/jobs/rails_error_dashboard/concerns/localized_job.rb
|
|
259
270
|
- app/jobs/rails_error_dashboard/create_issue_job.rb
|
|
260
271
|
- app/jobs/rails_error_dashboard/discord_error_notification_job.rb
|
|
261
272
|
- app/jobs/rails_error_dashboard/email_error_notification_job.rb
|
|
@@ -331,6 +342,17 @@ files:
|
|
|
331
342
|
- app/views/rails_error_dashboard/errors/storms.html.erb
|
|
332
343
|
- app/views/rails_error_dashboard/errors/swallowed_exceptions.html.erb
|
|
333
344
|
- app/views/rails_error_dashboard/errors/user_impact.html.erb
|
|
345
|
+
- config/locales/de.yml
|
|
346
|
+
- config/locales/en.yml
|
|
347
|
+
- config/locales/es.yml
|
|
348
|
+
- config/locales/fr.yml
|
|
349
|
+
- config/locales/it.yml
|
|
350
|
+
- config/locales/ja.yml
|
|
351
|
+
- config/locales/pl.yml
|
|
352
|
+
- config/locales/pt-BR.yml
|
|
353
|
+
- config/locales/ru.yml
|
|
354
|
+
- config/locales/uk.yml
|
|
355
|
+
- config/locales/zh-CN.yml
|
|
334
356
|
- config/routes.rb
|
|
335
357
|
- db/development.sqlite3
|
|
336
358
|
- db/migrate/20251223000000_create_rails_error_dashboard_complete_schema.rb
|
|
@@ -404,9 +426,11 @@ files:
|
|
|
404
426
|
- lib/rails_error_dashboard/commands/upsert_cascade_pattern.rb
|
|
405
427
|
- lib/rails_error_dashboard/configuration.rb
|
|
406
428
|
- lib/rails_error_dashboard/configuration_error.rb
|
|
429
|
+
- lib/rails_error_dashboard/current.rb
|
|
407
430
|
- lib/rails_error_dashboard/engine.rb
|
|
408
431
|
- lib/rails_error_dashboard/error_reporter.rb
|
|
409
432
|
- lib/rails_error_dashboard/helpers/user_model_detector.rb
|
|
433
|
+
- lib/rails_error_dashboard/i18n_store.rb
|
|
410
434
|
- lib/rails_error_dashboard/integrations/llm_middleware.rb
|
|
411
435
|
- lib/rails_error_dashboard/integrations/llm_span_processor.rb
|
|
412
436
|
- lib/rails_error_dashboard/integrations/o_tel.rb
|
|
@@ -420,6 +444,7 @@ files:
|
|
|
420
444
|
- lib/rails_error_dashboard/plugins/audit_log_plugin.rb
|
|
421
445
|
- lib/rails_error_dashboard/plugins/jira_integration_plugin.rb
|
|
422
446
|
- lib/rails_error_dashboard/plugins/metrics_plugin.rb
|
|
447
|
+
- lib/rails_error_dashboard/private_backend.rb
|
|
423
448
|
- lib/rails_error_dashboard/queries/action_cable_summary.rb
|
|
424
449
|
- lib/rails_error_dashboard/queries/active_storage_summary.rb
|
|
425
450
|
- lib/rails_error_dashboard/queries/analytics_stats.rb
|
|
@@ -481,6 +506,7 @@ files:
|
|
|
481
506
|
- lib/rails_error_dashboard/services/llm_cost_estimator.rb
|
|
482
507
|
- lib/rails_error_dashboard/services/llm_summary.rb
|
|
483
508
|
- lib/rails_error_dashboard/services/local_variable_capturer.rb
|
|
509
|
+
- lib/rails_error_dashboard/services/localized_time_formatter.rb
|
|
484
510
|
- lib/rails_error_dashboard/services/markdown_error_formatter.rb
|
|
485
511
|
- lib/rails_error_dashboard/services/n_plus_one_detector.rb
|
|
486
512
|
- lib/rails_error_dashboard/services/notification_helpers.rb
|
|
@@ -513,6 +539,7 @@ files:
|
|
|
513
539
|
- lib/rails_error_dashboard/subscribers/llm_call_subscriber.rb
|
|
514
540
|
- lib/rails_error_dashboard/subscribers/rack_attack_subscriber.rb
|
|
515
541
|
- lib/rails_error_dashboard/test_error.rb
|
|
542
|
+
- lib/rails_error_dashboard/translation.rb
|
|
516
543
|
- lib/rails_error_dashboard/value_objects/error_context.rb
|
|
517
544
|
- lib/rails_error_dashboard/value_objects/llm_call_event.rb
|
|
518
545
|
- lib/rails_error_dashboard/version.rb
|
|
@@ -530,7 +557,7 @@ metadata:
|
|
|
530
557
|
funding_uri: https://github.com/sponsors/AnjanJ
|
|
531
558
|
post_install_message: |
|
|
532
559
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
533
|
-
RED (Rails Error Dashboard) v0.
|
|
560
|
+
RED (Rails Error Dashboard) v0.9.1
|
|
534
561
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
535
562
|
|
|
536
563
|
First install:
|
|
@@ -569,5 +596,5 @@ requirements: []
|
|
|
569
596
|
rubygems_version: 3.6.9
|
|
570
597
|
specification_version: 4
|
|
571
598
|
summary: Self-hosted error tracking for Rails — local variables, system health, separate
|
|
572
|
-
or shared database. A free, open-source Sentry alternative.
|
|
599
|
+
or shared database, dashboard in 11 languages. A free, open-source Sentry alternative.
|
|
573
600
|
test_files: []
|