safely do
# keep going if this code fails
end
Ausnahmen werden gerettet und automatisch an Ihren bevorzugten Berichtsdienst gemeldet.
In Entwicklungs- und Testumgebungen werden Ausnahmen erhoben, sodass Sie sie beheben können.
Mehr lesen
Fügen Sie diese Zeile der GemFile Ihrer Anwendung hinzu:
gem "safely_block"
"Oh nein, Analytics haben die Suche gesenkt"
safely { track_search ( params ) }
"Empfehlungen wurden aufgrund eines schlechten Benutzers nicht mehr aktualisiert"
users . each do | user |
safely ( context : { user_id : user . id } ) { update_recommendations ( user ) }
end
Auch als yolo
Übergeben Sie einen zusätzlichen Kontext, um mit Ausnahmen gemeldet zu werden
safely context : { user_id : 123 } do
# code
end
Geben Sie einen Standardwert an, um die Ausnahmen zurückzusetzen
show_banner = safely ( default : true ) { show_banner_logic }
Spezifische Ausnahmen erheben
safely except : ActiveRecord :: RecordNotUnique do
# all other exceptions will be rescued
end
Geben Sie ein Array für mehrere Ausnahmeklassen über.
Nur spezifische Ausnahmen retten
safely only : ActiveRecord :: RecordNotUnique do
# all other exceptions will be raised
end
Schweigenausnahmen
safely silence : ActiveRecord :: RecordNotUnique do
# code
end
Gasberichterstattung mit:
safely throttle : { limit : 10 , period : 1 . minute } do
# reports only first 10 exceptions each minute
end
Hinweis: Die Gasgrenze ist ungefähr und pro Prozess.
Berichtet, Ausnahmen von einer Vielzahl von Diensten außerhalb des Boxs.
Hinweis: Der Kontext wird nicht mit Google Stackdriver und Scout APM unterstützt
Berichterstattung anpassen mit:
Safely . report_exception_method = -> ( e ) { Rollbar . error ( e ) }
Mit Rails können Sie dies in einem Initialisierer hinzufügen.
Standardmäßig werden Ausnahmmeldungen [safely]
vorangestellt. Dies erleichtert es einfacher, rettete Ausnahmen zu erkennen. Schalten Sie dies mit:
Safely . tag = false
Ausnahmen manuell zu melden:
Safely . report_exception ( e )
Senden Sie keine personenbezogenen Daten an Ausnahmedienste, um die Privatsphäre Ihrer Benutzer zu schützen. Filtern Sie sensible Formularfelder, verwenden Sie IDs (nicht E -Mail -Adressen), um Benutzer zu identifizieren und IP -Adressen zu maskieren.
Mit Rollbar können Sie:
Rollbar . configure do | config |
config . person_id_method = "id" # default
config . scrub_fields |= [ :birthday ]
config . anonymize_user_ip = true
end
Seien Sie während der Arbeit an Ausnahmen nach personenbezogenen Daten und korrigieren Sie sie bei Bedarf.
Sehen Sie sich den Changelog an
Jeder wird ermutigt, dieses Projekt zu verbessern. Hier sind einige Möglichkeiten, wie Sie helfen können:
Um mit der Entwicklung und Prüfung zu beginnen:
git clone https://github.com/ankane/safely.git
cd safely
bundle install
bundle exec rake test