Skip to content

Sentry

A library for reporting errors/warnings/messages to your Sentry account.

Getting started

Sign up for Sentry to get started.

Navigate to the Projects tab on the left-hand side.

In the top right, navigate to "Add new..." and select "Project"

Don't select a project or framework, since this Library isn't officially supported by Sentry (but don't worry, it is still officially supported by RoStrap). Give your project a name and create project!

Now you need to find your DSN. You will hopefully be shown the following screen, but if not you can always find these in the "Settings" tab.

You will need to locate a DSN that looks like this:

Next, install this library using the RoStrap plugin, and navigate to the Server-side Sentry library.

Under the configuration, modify the DSN variable to your DSN

Now you have a working Sentry library!

API

The API is the same for both the client and the server.

local Sentry = Resources:LoadLibrary("Sentry")
local Enumeration = Resources:LoadLibrary("Enumeration") -- Optional

Sentry:Post(string Message [, string Traceback, <Enum, Enumeration> MessageType])
-- Traceback defaults to debug.traceback()
-- MessageType defaults to "Error"
-- MessageType accepts any of the following Enumerations (or their corresponding numbers or strings)

-- 0: Enumeration.IssueType.Debug
-- 1: Enumeration.IssueType.Info
-- 2: Enumeration.IssueType.Warning
-- 3: Enumeration.IssueType.Error
-- 4: Enumeration.IssueType.Fatal

-- MessageType also accepts Roblox's MessageType Enums (but NOT their numbers or strings)
-- Enum.MessageType.MessageError
-- Enum.MessageType.MessageInfo
-- Enum.MessageType.MessageOutput
-- Enum.MessageType.MessageWarning

It is intended to be easily compatible with the Try library

local Try = Resources:LoadLibrary("Try")
local Sentry = Resources:LoadLibrary("Sentry")

Try(function(x) error("test client error " .. x) end, "1")
    :Catch(Sentry.Post)

Here are your free Sentry rate limits:

Enjoy!