Sentry Là Gì

     

Sentry.io là gì? lý do lại bắt buộc dùng tới Sentry

Sentry.io là 1 ứng dụng giúp chúng ta tracking lại rất nhiều error xảy ra phía bên trong ứng dụng trong vượt trình người tiêu dùng sử dụng, gửi thông báo lỗi trải qua email, SMS.

Bạn đang xem: Sentry là gì

Bạn vẫn xem: Sentry là gì

Trên home Sentry.io, nói rằng:

When your code breaks.Sentry is here lớn help you fix it.

Xem thêm: 【1️⃣】 Bạch Kim Là Gì? Giá Bạch Kim Bao Nhiêu 1 Gam, 1 Chỉ? Giá Bạch Kim Hôm Nay Bao Nhiêu 1 Chỉ

Tạo một Organization bắt đầu trên Sentry.io

Đầu tiên các bạn vào phía trên để tạo ra 1 Organization cho những dự án của mình,

*

sau khi tạo ra Organization xong, trang sẽ đưa tới giao diện cho mình tạo Project của mình. Có không ít ngôn ngữ được Sentry hỗ trợ, việc của công ty là chỉ việc chọn 1 cái, điền tên cùng Sentry đã đưa bạn tới hình ảnh hướng dẫn integration và cung cấp cho bạn 1 DSN key nhằm bạn thực hiện ở trong áp dụng của mình.

Xem thêm: Cách Sử Dụng Microsoft Word 2010 Bằng Tiếng Việt, Hướng Dẫn Sử Dụng Word 2010 Giáo Trình Toàn Tập


*

Thêm Sentry vào dự án Laravel để lưu lại lỗi

Laravel được tư vấn bởi Sentry thông qua package sentry-laravel, để sử dụng Sentry trong dự án bạn chỉ việc cài nói thông qua Composer:

$ composer require sentry/sentry-laravel:1.1.1Nếu ai đang dùng Laravel 5.5 trở lên thì làm lơ bước này:

"providers" => array( // ... SentryLaravelServiceProvider::class,)"aliases" => array( // ... "Sentry" => SentryLaravelFacade::class,)Thêm Sentry vào App/Exceptions/Handler.php để ứng dụng của người tiêu dùng report tới Sentry.io mỗi lúc có Exception xảy ra:

public function report(Exception $exception) if (app()->bound("sentry") && $this->shouldReport($exception)) app("sentry")->captureException($exception); parent::report($exception);Tạo file config của Sentry bằng command

$ php artisan vendor:publish --provider="SentryLaravelServiceProvider"return array( "dsn" => env("SENTRY_LARAVEL_DSN"), // capture release as git sha // "release" => trim(exec("git log --pretty="%h" -n1 HEAD")), // Capture bindings on SQL queries "breadcrumbs.sql_bindings" => true, // Capture default user context "user_context" => true,);Cuối cùng, các bạn cần bổ sung vào .env DSN key của dự án mà chúng ta đã sinh sản ở trên:

SENTRY_LARAVEL_DSN=https:///xxxxxĐể bình chọn xem Sentry đã nhận được lỗi trong ứng dụng Laravel chưa, chúng ta cũng có thể test bằng việc vào sản xuất 1 route throw ra 1 exception:

Route::get("/debug-sentry", function () throw new Exception("Laravel Sentry error!"););và phía trên Sentry sẽ capture lại Exception vừa rồi:

*

*

Thêm Sentry vào dự án React

Sentry tận dụng nó để capture các error bên trên client.

Đầu tiên mình tạo thành 1 instance của Sentry:

import Raven from "raven-js"import config from "config/"const SENTRY_DSN = "https:///xxxxx"Raven.config(SENTRY_DSN, environment: "local").install()export mặc định Ravenimport React, Component from "react"import sentry from "sentry"class ErrorBoundary extends Component state = eventId: null componentDidCatch(error, errorInfo) const eventId = sentry.captureException(error, extra: errorInfo ) this.setState(eventId) render() return this.props.errorStatus ? button onClick=() => sentry.showReportDialog( eventId: this.state.eventId )>Report feedback/button> : this.props.children export default ErrorBoundaryCuối thuộc bạn chỉ việc bọc tổng thể các Component trong app của người sử dụng bằng ErrorBoundary ở trên

import React, Component from "react"import ErrorBoundary from "ErrorBoundary"class ứng dụng extends Component render() return ( ErrorBoundary> // những component bé /ErrorBoundary> ) export default App