[RUBY] Suivre les erreurs de l'application Rails avec Sentry

Accord

Contrat parmi les suivants https://sentry.io/signup/

Vous allez créer un projet au moment du contrat, et la méthode de configuration est écrite à l'écran après la création du projet, il ne devrait donc y avoir aucun problème si vous procédez selon la procédure. Au cas où, je vais le réorganiser comme moi.

Utilisation de base

Gemfile


gem "sentry-raven"
$ bundle install

config/application.rb


module AppName
  class Application < Rails::Application
    #réduction
    Raven.configure do |config|
      config.dsn = "https://#{ENV['SENTRY_KEY']}@#{ENV['SENTRY_SECRET']}.sentry.io/#{ENV['SENTRY_ID']}"
    end
  end
end

Dans la méthode de configuration affichée sur le site Sentry, tous les identifiants, etc. sont écrits directement, je les mets donc dans la variable d'environnement.

Être capable de récupérer les paramètres et les informations de session

app/controllers/application.rb


class ApplicationController < ActionController::Base
  before_action :set_raven_context

  private

  def set_raven_context
    Raven.user_context(id: session[:current_user_id]) # or anything else in session
    Raven.extra_context(params: params.to_unsafe_h, url: request.url)
  end
end

Ne pas enregistrer le mot de passe en texte brut

$ touch config/initializers/sentry.rb

config/initializers/sentry.rb


Raven.configure do |config|
  config.sanitize_fields = Rails.application.config.filter_parameters.map(&:to_s)
end

Voir uniquement les erreurs de production

Par défaut, toutes les erreurs d'environnement de développement seront affichées dans une liste, modifiez donc les paramètres.

Paramètres> Projets> Nom du projet> Environnements> Environnements hors production masquer  2020-09-24 14.42.26.png

référence

Autre

L'interface utilisateur est vraiment Slack lol  2020-09-18 16.23.44.png

Recommended Posts

Suivre les erreurs de l'application Rails avec Sentry
[Rails6] Créer une nouvelle application avec Rails [Débutant]
[Rails 5] Créer une nouvelle application avec Rails [Débutant]
[AWS] Publier l'application Rails avec nginx + puma
Rétrograder une application existante créée avec les rails 5.2.4 vers 5.1.6
Publiez l'application avec ruby on rails
rail nouveau nom d'application non créé
Comment pousser une application développée avec Rails vers Github
[Rails 6] Erreur d'exécution avec $ rails s
Manipuler le dispositif avec des rails
[Rails] Didacticiel Apprendre avec les rails
[Rails] Test avec RSpec
[Rails] Développement avec MySQL
Prend en charge la multilinguisme avec Rails!
Sortie verbalisée de procédure approximative lors de la création d'une application avec Rails
[Rails] J'ai essayé de créer une mini application avec FullCalendar
Je veux pousser une application créée avec Rails 6 vers GitHub
Comment spécifier la base de données lors de la création d'une application avec des rails
Obtenez des informations sur la chaîne Youtube avec l'application Rails (en utilisant Yt gem)
[Rails] Télécharger des vidéos avec Rails (ActiveStorage)
[Vue Rails] "Hello Vue!" Affiché avec Vue + Rails
Japaneseize en utilisant i18n avec Rails
Exécuter des rails à chaque fois dans le docker
[Docker] Construction de l'environnement Rails 5.2 avec docker
Utilisez plusieurs bases de données avec Rails 6.0
[Rails] Spécifiez le format avec link_to
Incorporer circleCI dans l'application CircleCI Rails
[Docker] À utiliser à tout moment avec Docker + Rails
L'histoire du refactoring avec un assistant personnel pour la première fois dans une application Rails
[Rails] J'ai créé une mini-application de calendrier simple avec des spécifications personnalisées.