Sentry-javascript: パッケージサイズが大きい

作成日 2020年06月30日  ·  12コメント  ·  ソース: getsentry/sentry-javascript

  • [x]ドキュメントを確認します: https ://docs.sentry.io/
  • [x]既存の問題を検索します: https ://github.com/getsentry/sentry-javascript/issues
  • [x]最新のリリースを使用してください: https ://github.com/getsentry/sentry-javascript/releases
  • [x] Sentryアカウントから影響を受けるイベントへのリンクを提供します

パッケージ+バージョン

  • [x] @sentry/browser
  • [] @sentry/node
  • [] raven-js
  • [] raven-node _(ノードのレイヴン)_
  • [ ] 他の:

バージョン:

5.18.1

説明

こんにちは。 最近、ペットプロジェクトのバンドルサイズを調べたところ、@ centry / browserのサイズとその依存関係にショックを受けました。

image

パッケージサイズ(https://github.com/getsentry/sentry-javascript/issues/1552)についてはすでにいくつかの議論があり、問題は修正されたと考えられているようですが、これはクレイジーです- @sentry/browserはReactよりも多くのスペースを消費しています! そこにはたくさんの統合、グループ化ロジックなどがあることは理解していますが、世界に費用をかけずに使用できる小さなSentryクライアントはありますか?

Discussion

最も参考になるコメント

ねえ、これはv6へのロードマップで最も重要な項目の1つです。https ://github.com/getsentry/sentry-javascript/issues/2817を参照してください。

これはv6より前では発生せず、それにはいくつかの理由があります。
小さくするには、多くの内部リファクタリングを行う必要があります。厳密に言えば、これは大きな変化です。

使用法の観点からは、重大な変更はないはずですが(構文、SDK APIは同じままです)、たとえば誰かが独自の統合を作成したり、より高度な方法でSDKを使用したりすると、重大な変更が生じる可能性があります。

SDKをよりツリーシェイク可能にし、多くの機能の追加に寄与しない多くの内部グルーコードを削除します。

どうぞよろしくお願いいたします。これは私たちにとって優先度の高い問題であることをお知らせしたいと思います。

全てのコメント12件

これはVue.jsにも当てはまるようです。 Vueの解析サイズは64.4kBですが、Sentryは合計68.0 kBです(6.1 kB Vue統合を含む)。

同意しました。 私は会社をSentryに移行することを検討していますが、これは飲み込むのが難しい錠剤になっています...ツリーシェイク( import { init } from "@sentry/react"を介してSentryをインポートする)を使用し、その関数を呼び出すだけでも、+ 66kbが表示されますバンドルで圧縮する前に-驚くほど高いです!

Bundlephobiaもかなり大きなサイズを報告しています。 https://bundlephobia.com/result?p=@sentry/react @ 5.20.0

飲み込むのが難しい錠剤...

同意しました。20Kgzip圧縮は、基本的なJSエラーレポートのサポートを取得するためのTONです。

また、歩哨がタイプスクリプトファイルをバンドルに追加していることにも気づきました: https ://github.com/getsentry/sentry-javascript/issues/2789

ええ、私にとって@sentryはすでに94kb縮小されています!

誤解しないでください、私はセントリーが大好きですが、これは数Kbを超えてはいけないと思います。 react-domとほぼ同じ大きさで、Victory(d3チャートライブラリ)よりも大きいですが、Oktaよりも大きくはありません(これは私の次のgithubの問題です😄)

ここに何かニュースはありますか? これはほぼ3か月間開かれているので、公式のSentryの応答は素晴らしいでしょう。 🙂 @ kamilogorek @HazAT @lobsterkatie

Screen Shot 2020-10-17 at 12 40 15 PM

5.25-> 5.26アップグレードで追加されたもう2つのkbがあります。 逆方向へのリリースへの希望はありますか?

ねえ、これはv6へのロードマップで最も重要な項目の1つです。https ://github.com/getsentry/sentry-javascript/issues/2817を参照してください。

これはv6より前では発生せず、それにはいくつかの理由があります。
小さくするには、多くの内部リファクタリングを行う必要があります。厳密に言えば、これは大きな変化です。

使用法の観点からは、重大な変更はないはずですが(構文、SDK APIは同じままです)、たとえば誰かが独自の統合を作成したり、より高度な方法でSDKを使用したりすると、重大な変更が生じる可能性があります。

SDKをよりツリーシェイク可能にし、多くの機能の追加に寄与しない多くの内部グルーコードを削除します。

どうぞよろしくお願いいたします。これは私たちにとって優先度の高い問題であることをお知らせしたいと思います。

@HazAT素晴らしい、私たちに知らせてくれてありがとう

AWS Lambda @EdgeでSentryを1MBのサイズ制限で使用するための回避策はありますか? 依存関係が大きくなりすぎたため、現在のところ、古いバージョンのsentry/nodeを使用するしかありません。 これはどういうわけか対処されていますか?

@aleehedl Sentryパッケージを直接使用する代わりに、レイヤーを使用してSentryを追加できるAWSLambdaの新しいソリューションに取り組んでいます。 レイヤーのサイズは1MBよりはるかに小さいです。

v6.0.0は本日リリースされましたが、重大な変更は含まれていないようです。
バンドルサイズの縮小は見られません。私のwebpackバンドルはv6で615バイト大きくなっています。
すべての主要な変更がv7(?)にプッシュされたようです。

すべての主要な変更がv7(?)にプッシュされたようです。

はい。 デフォルトでセッションを送信するには、大きなバンプが必要でした(対応する変更ログエントリを参照)。したがって、大きな変更はv7で発生します。

このページは役に立ちましたか?
0 / 5 - 0 評価