getsentry / getsentry/sentry-ruby

Add AR query time to breadcrumbs

オープン
#2,283 コメント 4 件 リアクション 0 件 担当者 1 名 @sl0thentr0py が担当を希望しています GitHub で見る
Feature Ruby sentry-rails Spans
主要言語
Ruby
スター
987
フォーク
541
平均マージ
17時間 40分
マージ済み PR(30日)
19

説明

**Describe the idea**

We have breadcrumbs with the query like:

```js
{
name: Employee Pluck,
sql: SELECT DISTINCT "employees"."person_id" FROM "employees" WHERE "employees"."company_id" IN ('x', 'y', 'z'),
statement_name: null
}
```

Would be helpful to have the timing of that query together with the breadcrumb:

```js
{
name: Employee Pluck,
sql: SELECT DISTINCT "employees"."person_id" FROM "employees" WHERE "employees"."company_id" IN ('x', 'y', 'z'),
statement_name: null,
duration: 5.1234 // ms
}
```

**Why do you think it's beneficial to most of the users**

That will help with exceptions that might be caused due to slow endpoints such as graphql timeout middleware, rack-timeout and etc.

**Possible implementation**

https://github.com/getsentry/sentry-ruby/blob/master/sentry-rails/lib/sentry/rails/breadcrumb/active_support_logger.rb#L14-L18

Could be something like:

```ruby
crumb = Sentry::Breadcrumb.new(
data: data,
category: name,
timestamp: started.to_i,
duration: started - finished
)
```

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。