Commit 951835e69020e28fedf356c71d3816d6e4e40234
1 parent
4eed9f65
Exists in
master
and in
1 other branch
Update readme with javascript error reporting
I've added description how to setup airbrake-js to log javascript errors in errbit and how one can test v3 api using airbrake ruby client.
Showing
1 changed file
with
46 additions
and
3 deletions
Show diff stats
README.md
| ... | ... | @@ -305,13 +305,56 @@ it will be displayed under the *User Details* tab: |
| 305 | 305 | Javascript error notifications |
| 306 | 306 | -------------------------------------- |
| 307 | 307 | |
| 308 | -You can log javascript errors that occur in your application by including the | |
| 309 | -following script tag before any javascript is loaded in your application. | |
| 308 | +You can log javascript errors that occur in your application by including | |
| 309 | +[airbrake-js](https://github.com/airbrake/airbrake-js) javascript library. | |
| 310 | 310 | |
| 311 | +First you need to add airbrake-shim.js to your site and set some basic configuration | |
| 312 | +options: | |
| 313 | + | |
| 314 | +``` | |
| 315 | +<script src="airbrake-shim.js" data-airbrake-project-id="ERRBIT API KEY" data-airbrake-project-key="ERRBIT API KEY" data-airbrake-environment-name="production" data-airbrake-host="http://errbit.yourdomain.com"></script> | |
| 311 | 316 | ``` |
| 312 | -<script src="//YOUR-ERRBIT-HOST/javascripts/notifier.js" type="text/javascript"></script> | |
| 317 | + | |
| 318 | +Or you can just add shim file and set these options using: | |
| 319 | + | |
| 313 | 320 | ``` |
| 321 | +Airbrake.setProject("ERRBIT API KEY", "ERRBIT API KEY"); | |
| 322 | +Airbrake.setHost("http://errbit.yourdomain.com"); | |
| 323 | +``` | |
| 324 | + | |
| 325 | +And that's it. | |
| 326 | + | |
| 327 | +Testing API V3 using ruby airbrake client | |
| 328 | +----------------------------------------- | |
| 329 | + | |
| 330 | +If you want you test standard airbrake ruby gem with API V3. To do that you | |
| 331 | +need to change your airbrake initializer file to something like this: | |
| 332 | + | |
| 333 | +``` | |
| 334 | +Airbrake.configure do |config| | |
| 335 | + config.api_key = ENV['airbrake_api_key'] | |
| 336 | + config.host = ENV['airbrake_host'] | |
| 337 | + config.port = ENV['airbrake_port'].to_i | |
| 338 | + config.secure = ENV['airbrake_secure'] == 'true' | |
| 339 | + config.project_id = ENV['airbrake_api_key'] | |
| 340 | +end | |
| 341 | + | |
| 342 | +class Airbrake::Sender | |
| 343 | + def json_api_enabled? | |
| 344 | + true | |
| 345 | + end | |
| 346 | +end | |
| 347 | +``` | |
| 348 | + | |
| 349 | +It is important to set project_id option to the same value as api_key, because | |
| 350 | +project_id is required for building url to api endpoint. And airbrake has a bug | |
| 351 | +that removes api_key from endpoint url. The only way to get this value is by passing | |
| 352 | +it as project_id. This little monkey-patch is required because airbrake gem only | |
| 353 | +uses v3 api when host is set to collect.airbrake.io. | |
| 314 | 354 | |
| 355 | +V3 request don't have framework option so you won't see this value in your error | |
| 356 | +notices in errbit. Besides that everything looks the same. It was tested using | |
| 357 | +rake airbrake:test for both v2 and v3. | |
| 315 | 358 | |
| 316 | 359 | Using custom fingerprinting methods |
| 317 | 360 | ----------------------------------- | ... | ... |