| import sys |
| import logging |
| from src.logger import logging |
|
|
|
|
| def error_message_details(error, error_detail: sys): |
| _, _, exc_tb = error_detail.exc_info() |
|
|
| file_name = exc_tb.tb_frame.f_code.co_filename |
|
|
| error_message = ( |
| "Error occurred in script name [{0}] " |
| "line number [{1}] " |
| "error message [{2}]" |
| ).format( |
| file_name, |
| exc_tb.tb_lineno, |
| str(error) |
| ) |
|
|
| return error_message |
|
|
|
|
| class CustomException(Exception): |
| def __init__(self, error_message, error_details: sys): |
| self.error_message = error_message_details( |
| error_message, |
| error_details |
| ) |
| super().__init__(self.error_message) |
|
|
| def __str__(self): |
| return self.error_message |
|
|