2020-04-12 23:20:44 +03:00
|
|
|
# ErrorHandler
|
|
|
|
|
|
|
|
|
|
There is base class for error handlers.
|
|
|
|
|
|
|
|
|
|
## Simple usage:
|
|
|
|
|
```pyhton3
|
|
|
|
|
from aiogram.handlers import ErrorHandler
|
|
|
|
|
|
|
|
|
|
...
|
|
|
|
|
|
2020-05-10 03:02:31 +04:00
|
|
|
@router.errors()
|
2020-04-12 23:20:44 +03:00
|
|
|
class MyHandler(ErrorHandler):
|
|
|
|
|
async def handle(self) -> Any:
|
|
|
|
|
log.exception(
|
|
|
|
|
"Cause unexpected exception %s: %s",
|
2020-04-12 23:29:10 +03:00
|
|
|
self.exception_name,
|
|
|
|
|
self.exception_message
|
2020-04-12 23:20:44 +03:00
|
|
|
)
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Extension
|
|
|
|
|
|
2020-04-12 23:29:10 +03:00
|
|
|
This base handler is subclass of [BaseHandler](basics.md#basehandler) with some extensions:
|
|
|
|
|
|
|
|
|
|
- `#!python3 self.exception_name` is alias for `#!python3 self.event.__class__.__name__`
|
|
|
|
|
- `#!python3 self.exception_message` is alias for `#!python3 str(self.event)`
|
2020-04-12 23:20:44 +03:00
|
|
|
|
|
|
|
|
## Related pages
|
|
|
|
|
|
|
|
|
|
- [BaseHandler](basics.md#basehandler)
|
2020-05-10 03:02:31 +04:00
|
|
|
- [Router.errors](../router.md#errors)
|
2020-04-12 23:20:44 +03:00
|
|
|
- [Filters](../filters/exception.md)
|