本文整理匯總了Python中logging.handlers.SMTPHandler方法的典型用法代碼示例。如果您正苦於以下問題:Python handlers.SMTPHandler方法的具體用法?Python handlers.SMTPHandler怎麽用?Python handlers.SMTPHandler使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類logging.handlers
的用法示例。
在下文中一共展示了handlers.SMTPHandler方法的12個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: init_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_app(cls, app):
Config.init_app(app)
# email errors to the administrators
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if getattr(cls, 'MAIL_USERNAME', None) is not None:
credentials = (cls.MAIL_USERNAME, cls.MAIL_PASSWORD)
if getattr(cls, 'MAIL_USE_TLS', None):
secure = ()
mail_handler = SMTPHandler(
mailhost=(cls.MAIL_SERVER, cls.MAIL_PORT),
fromaddr=cls.CIRCULATE_MAIL_SENDER,
toaddrs=[cls.CIRCULATE_ADMIN],
subject=cls.CIRCULATE_MAIL_SUBJECT_PREFIX + ' Application Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
示例2: init_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_app(cls, app):
Config.init_app(app)
# 把錯誤發送管理員
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if getattr(cls, 'MAIL_USERNAME', None) is not None:
credentials = (cls.MAIL_USERNAME, cls.MAIL_PASSWORD)
if getattr(cls, 'MAIL_USE_TLS', None):
secure = ()
mail_handler = SMTPHandler(
mailhost=(cls.MAIL_SERVER, cls.MAIL_PORT),
fromaddr=cls.MAIL_SENDER,
toaddrs=[cls.ADMINMAIL],
subject=cls.MAIL_SUBJECT_PREFIX + ' Application Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
示例3: init_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_app(cls, app):
Config.init_app(app)
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if getattr(cls, 'MAIL_USERNAME', None) is not None:
credentials = (cls.MAIL_USERNAME, cls.MAIL_PASSWORD)
if getattr(cls, 'MAIL_USE_TLS', None):
secure = ()
mail_handler = SMTPHandler(
mailhost=(cls.MAIL_SERVER, cls.MAIL_PORT),
fromaddr=cls.FLASHCARD_MAIL_SENDER,
toaddrs=[cls.FLASHCARD_ADMIN],
subject=cls.FLASHCARD_MAIL_SUBJECT_PREFIX + 'Application Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
示例4: init_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_app(cls, app):
Config.init_app(app)
# email errors to the administrators
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if getattr(cls, 'MAIL_USERNAME', None) is not None:
credentials = (cls.MAIL_USERNAME, cls.MAIL_PASSWORD)
if getattr(cls, 'MAIL_USE_TLS', None):
secure = ()
mail_handler = SMTPHandler(
mailhost=(cls.MAIL_SERVER, cls.MAIL_PORT),
fromaddr=cls.MAIL_SENDER,
toaddrs=[cls.APP_ADMIN],
subject=cls.MAIL_SUBJECT_PREFIX + ' Application Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
示例5: init_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_app(cls, app):
Config.init_app(app)
# 發送服務啟動初始化時錯誤信息給管理員
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if getattr(cls, 'MAIL_USERNAME', None) is not None:
credentials = (cls.MAIL_USERNAME, cls.MAIL_PASSWORD)
if getattr(cls, 'MAIL_USE_TLS', None):
secure = ()
mail_handler = SMTPHandler(
mailhost=(cls.MAIL_SERVER, cls.MAIL_PORT),
fromaddr=cls.FLASKY_MAIL_SENDER,
toaddrs=[cls.FLASKY_ADMIN],
subject=cls.FLASKY_MAIL_SUBJECT_PREFIX + ' AutoLine Startup Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
示例6: init_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_app(cls, app):
Config.init_app(app)
# email errors to the administrators
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if getattr(cls, 'MAIL_USERNAME', None) is not None:
credentials = (cls.MAIL_USERNAME, cls.MAIL_PASSWORD)
if getattr(cls, 'MAIL_USE_TLS', None):
secure = ()
mail_handler = SMTPHandler(
mailhost=(cls.MAIL_SERVER, cls.MAIL_PORT),
fromaddr=cls.FLASKY_MAIL_SENDER,
toaddrs=[cls.FLASKY_ADMIN],
subject=cls.FLASKY_MAIL_SUBJECT_PREFIX + ' Application Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
示例7: create_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def create_app(config_class=Config):
"""Return AUCR app flask object."""
app = Flask(__name__)
app.config.from_object(config_class)
app.elasticsearch = Elasticsearch([app.config['ELASTICSEARCH_URL']]) \
if app.config['ELASTICSEARCH_URL'] else None
if app.config['MAIL_SERVER']:
auth = None
if app.config['MAIL_USERNAME'] or app.config['MAIL_PASSWORD']:
auth = (app.config['MAIL_USERNAME'], app.config['MAIL_PASSWORD'])
secure = None
if app.config['MAIL_USE_TLS']:
secure = ()
mail_handler = SMTPHandler(
mailhost=(app.config['MAIL_SERVER'], app.config['MAIL_PORT']),
fromaddr='no-reply@' + app.config['MAIL_SERVER'],
toaddrs=app.config['ADMINS'], subject='AUCR Failure',
credentials=auth, secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
if app.config['LOG_TO_STDOUT']:
stream_handler = logging.StreamHandler()
stream_handler.setLevel(logging.INFO)
app.logger.addHandler(stream_handler)
if not os.path.exists('logs'):
os.mkdir('logs')
file_handler = RotatingFileHandler('logs/aucr.log', maxBytes=10240, backupCount=10)
file_handler.setFormatter(logging.Formatter('%(asctime)s %(levelname)s: %(message)s '
'[in %(pathname)s:%(lineno)d]'))
app.logger.setLevel(logging.INFO)
app.logger.info('AUCR startup')
return app
示例8: email_hdlr
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def email_hdlr(subject="You've got mail", **kwargs):
"""An email log handler
Args:
subject (str): The email subject (default: You've got mail.).
kwargs(dict): Keyword arguments.
Kwargs:
host (str): The email server host (default: localhost).
port (str): The email sever port (default: None).
sender (str): The email sender (default: the system username at gmail).
recipients (List[str]): The email recipients (default: the system
username at gmail).
username (str): The email sever username (default: None).
password (str): The email sever password (default: None).
Returns:
New instance of :class:`logging.handlers.SMTPHandler`
Examples:
>>> email_hdlr('hello world') # doctest: +ELLIPSIS
<...SMTPHandler...>
"""
host = kwargs.get("host", "localhost")
port = kwargs.get("port")
address = (host, port) if port else host
def_recipient = "%s@gmail.com" % environ.get("USER")
sender = kwargs.get("sender", def_recipient)
recipients = kwargs.get("recipients", [def_recipient])
username = kwargs.get("username")
password = kwargs.get("password")
args = (address, sender, recipients, subject)
credentials = (username, password) if username or password else None
return hdlrs.SMTPHandler(*args, credentials=credentials)
示例9: init_email_error_handler
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def init_email_error_handler(app):
"""
Initialize a logger to send emails on error-level messages.
Unhandled exceptions will now send an email message to app.config.ADMINS.
"""
if app.debug: return # Do not send error emails while developing
# Retrieve email settings from app.config
host = app.config['MAIL_SERVER']
port = app.config['MAIL_PORT']
from_addr = app.config['MAIL_DEFAULT_SENDER']
username = app.config['MAIL_USERNAME']
password = app.config['MAIL_PASSWORD']
secure = () if app.config.get('MAIL_USE_TLS') else None
# Retrieve app settings from app.config
to_addr_list = app.config['ADMINS']
subject = app.config.get('APP_SYSTEM_ERROR_SUBJECT_LINE', 'System Error')
# Setup an SMTP mail handler for error-level messages
import logging
from logging.handlers import SMTPHandler
mail_handler = SMTPHandler(
mailhost=(host, port), # Mail host and port
fromaddr=from_addr, # From address
toaddrs=to_addr_list, # To address
subject=subject, # Subject line
credentials=(username, password), # Credentials
secure=secure,
)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
# Log errors using: app.logger.error('Some error message')
示例10: create_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def create_app(config_name):
"""Create an application instance."""
app = Flask(__name__)
# import configuration
cfg = os.path.join(os.getcwd(), 'config', config_name + '.py')
app.config.from_pyfile(cfg)
# initialize extensions
bootstrap.init_app(app)
db.init_app(app)
lm.init_app(app)
# import blueprints
from .main import main as main_blueprint
app.register_blueprint(main_blueprint)
# configure production logging of errors
if not app.config['DEBUG'] and not app.config['TESTING']:
import logging
from logging.handlers import SMTPHandler
mail_handler = SMTPHandler('127.0.0.1', 'error@example.com',
app.config['ADMINS'], 'Application Error')
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
return app
示例11: create_app
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def create_app(config_name):
app = Flask(__name__)
app.config.from_object(config[config_name])
if not app.config['DEBUG'] and not app.config['TESTING']:
# configure logging for production
# email errors to the administrators
if app.config.get('MAIL_ERROR_RECIPIENT') is not None:
import logging
from logging.handlers import SMTPHandler
credentials = None
secure = None
if app.config.get('MAIL_USERNAME') is not None:
credentials = (app.config['MAIL_USERNAME'], app.config['MAIL_PASSWORD'])
if app.config['MAIL_USE_TLS'] is not None:
secure = ()
mail_handler = SMTPHandler(
mailhost=(app.config['MAIL_SERVER'], app.config['MAIL_PORT']),
fromaddr=app.config['MAIL_DEFAULT_SENDER'],
toaddrs=[app.config['MAIL_ERROR_RECIPIENT']],
subject='[Talks] Application Error',
credentials=credentials,
secure=secure)
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
# send standard logs to syslog
import logging
from logging.handlers import SysLogHandler
syslog_handler = SysLogHandler()
syslog_handler.setLevel(logging.WARNING)
app.logger.addHandler(syslog_handler)
bootstrap.init_app(app)
db.init_app(app)
moment.init_app(app)
pagedown.init_app(app)
mail.init_app(app)
login_manager.init_app(app)
from .talks import talks as talks_blueprint
app.register_blueprint(talks_blueprint)
from .auth import auth as auth_blueprint
app.register_blueprint(auth_blueprint, url_prefix='/auth')
from .api_1_0 import api as api_blueprint
app.register_blueprint(api_blueprint, url_prefix='/api/1.0')
from app.emails import start_email_thread
@app.before_first_request
def before_first_request():
start_email_thread()
return app
示例12: configure_logging
# 需要導入模塊: from logging import handlers [as 別名]
# 或者: from logging.handlers import SMTPHandler [as 別名]
def configure_logging(app):
"""
Configura el módulo de logs. Establece los manejadores para cada logger.
:param app: Instancia de la aplicación Flask
"""
# Elimina los manejadores por defecto de la app
del app.logger.handlers[:]
loggers = [app.logger, ]
handlers = []
console_handler = logging.StreamHandler()
console_handler.setFormatter(verbose_formatter())
if (app.config['APP_ENV'] == app.config['APP_ENV_LOCAL']) or (
app.config['APP_ENV'] == app.config['APP_ENV_TESTING']) or (
app.config['APP_ENV'] == app.config['APP_ENV_DEVELOPMENT']):
console_handler.setLevel(logging.DEBUG)
handlers.append(console_handler)
elif app.config['APP_ENV'] == app.config['APP_ENV_PRODUCTION']:
console_handler.setLevel(logging.INFO)
handlers.append(console_handler)
mail_handler = SMTPHandler((app.config['MAIL_SERVER'], app.config['MAIL_PORT']),
app.config['DONT_REPLY_FROM_EMAIL'],
app.config['ADMINS'],
'[Error][{}] La aplicación falló'.format(app.config['APP_ENV']),
(app.config['MAIL_USERNAME'],
app.config['MAIL_PASSWORD']),
())
mail_handler.setLevel(logging.ERROR)
mail_handler.setFormatter(mail_handler_formatter())
handlers.append(mail_handler)
for l in loggers:
for handler in handlers:
l.addHandler(handler)
l.propagate = False
l.setLevel(logging.DEBUG)