Giter VIP home page Giter VIP logo

wmsentry's People

Contributors

akasake avatar dieterholvoet avatar ponkiwonki avatar robinhoutevelts avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

drupallabs

wmsentry's Issues

Some issues appear multiple times

Description

Sometimes, issues are sent to Sentry multiple times, but in different formats:

First issue

Title: Too few arguments to function Drupal\wmcustom\Menu\MenuBuilder::__construct(), 4 passed in /home/www-mediawijsdev/web/public/core/lib/Drupal/Component/DependencyInjection/Container.php on line 257 and exactly 6 expected
Description: same

Does not have mechanism tag
Has release tag

Second issue

Title: ArgumentCountError
Description: Too few arguments to function Drupal\wmcustom\Menu\MenuBuilder::__construct(), 4 passed in /home/www-mediawijsdev/web/public/core/lib/Drupal/Component/DependencyInjection/Container.php on line 257 and exactly 6 expected

Has mechanism: generic tag
Does not have release tag

Third issue

Same as second, but also has an url.

Add the possibility to ignore errors using regexes

Summary

Add the possibility to ignore errors using regexes for issues that are hard to ignored using their structured info.

Some examples:

  • Deadlock found when trying to get lock
  • Lock wait timeout exceeded

Add PHP8 support

Summary

Add PHP 8 support.

TODO

  • Change minimum version of sentry/sentry to 3.1.1

Drop events by error name (Inbound Filters)

Summary

Sentry has a feature called Inbound Filters where you can drop incoming events when the error message matches with a set of patterns you can define. You can provide multiple patterns, one per line. The filter applies if any of the patterns match.

The Inbound Filters feature is paid-only and requires a Sentry business account.
We'd like to replicate that feature to wmsentry to drop events before even sending them, based on the error message.

Currently there is the excluded_exceptions and excluded_tags config option.
We'd like to propose an additional excluded_error_messages.

Basic example

excluded_error_messages:
  - 'The icon * is not available*'
  - 'Email not sent for *'

Externally hosted exclusion rules

Summary

This modules supports dropping unwanted logs through the excluded_exceptions and excluded_tags config options.
However, we (Wieni, the web agency) want the possibility to consolidate some exclusions for our entire organization.

For example when we identify a new tag or exception that we want to exclude, we don't want to have to update the wmsentry config in all our projects.
As a workaround we used inbound filters, but that's only available when you have a Business subscription at Sentry. We moved to a Teams subscription so are looking for a new workaround.

Proposal

A new exclusion_remote_config option where you can enter a url to fetch extra exclusion config.

exclusion_remote_config: 'https://s3.eu-central-1.amazonaws.com/org-wmsentry-config/wmsentry.config.yaml'

The content at https://s3.eu-central-1.amazonaws.com/org-wmsentry-config/wmsentry.config.yaml is:

excluded_exceptions:
  - Drupal\my_module\Exception\SomeException
excluded_tags:
  - tag: channel
    value: 'some channel'

If we want to add a new excluded exception to all our projects, we would only need to update the yaml file stored on S3.
Cron will check if the yaml file on s3 has changed and will reconfigure wmsentry if needed.

Add PHPStan to coding standard fixers

  • Add phpstan.neon config file referencing the wmcodestyle rule files (example)
  • Add phpstan analyse to the coding-standards composer script
  • Add autoload-dev entry to ensure autoloading during analysis

Check the Sentry integration status

Summary

Add a simple way to make sure the integration with Sentry is working as it should, without having to manually trigger exceptions and check the Sentry issue queue.

Motivation

Right now, the only way to test whether the integration with Sentry is setup right is to trigger an exception - or to wait until an exception is triggered on some page - and to check if a Sentry issue was created in the right project.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.