Hi Ash, Thanks for the response .
I neglected to post that I do in fact have that config specified in the airflow.cfg My file logger shows the custom formatting I have set and I see a log line in the console from the scheduler: {logging_config.py:42} INFO - Successfully imported user-defined logging config from Cheers, David On Sat, Oct 7, 2017 at 7:42 AM, Ash Berlin-Taylor < ash_airflowl...@firemirror.com> wrote: > It could be that you have created a custom logging file, but you haven't > specified it in your airflow.cfg: > > ``` > logging_config_class=mymodule.LOGGING_CONFIG > ``` > > > > > > On 7 Oct 2017, at 00:11, David Klosowski <dav...@thinknear.com> wrote: > > > > Hey Airflow Devs: > > > > How is s3 logging supposed to work in Airflow 1.9.0? > > > > I've followed the *UPDATING.md* guide for the new setup of logging and > > while I can use my custom logging configuration module to format the > files > > written to the host, the s3 logging doesn't appear to work as I don't see > > anything in s3. > > > > *> airflow.cfg* > > > > task_log_reader = s3.task > > > > > > *> custom logging module added to PYTHONPATH with __init__.py in > directory* > > ---- > > import os > > > > from airflow import configuration as conf > > > > LOG_LEVEL = conf.get('core', 'LOGGING_LEVEL').upper() > > LOG_FORMAT = conf.get('core', 'log_format') > > > > BASE_LOG_FOLDER = conf.get('core', 'BASE_LOG_FOLDER') > > > > FILENAME_TEMPLATE = '{{ ti.dag_id }}/{{ ti.task_id }}/{{ ts }}/{{ > > try_number }}.log' > > > > STAGE = os.getenv('STAGE') > > > > S3_LOG_FOLDER = 's3://tn-testing-bucket/dk > > > > LOGGING_CONFIG = { > > 'version': 1, > > 'disable_existing_loggers': False, > > 'formatters': { > > 'airflow.task': { > > 'format': LOG_FORMAT, > > }, > > }, > > 'handlers': { > > 'console': { > > 'class': 'logging.StreamHandler', > > 'formatter': 'airflow.task', > > 'stream': 'ext://sys.stdout' > > }, > > 'file.task': { > > 'class': 'airflow.utils.log.file_task_ > handler.FileTaskHandler', > > 'formatter': 'airflow.task', > > 'base_log_folder': os.path.expanduser(BASE_LOG_FOLDER), > > 'filename_template': FILENAME_TEMPLATE, > > }, > > # When using s3 or gcs, provide a customized LOGGING_CONFIG > > # in airflow_local_settings within your PYTHONPATH, see > UPDATING.md > > # for details > > 's3.task': { > > 'class': 'airflow.utils.log.s3_task_handler.S3TaskHandler', > > 'formatter': 'airflow.task', > > 'base_log_folder': os.path.expanduser(BASE_LOG_FOLDER), > > 's3_log_folder': S3_LOG_FOLDER, > > 'filename_template': FILENAME_TEMPLATE, > > } > > }, > > 'loggers': { > > 'airflow.task': { > > 'handlers': ['s3.task'], > > 'level': LOG_LEVEL, > > 'propagate': False, > > }, > > 'airflow.task_runner': { > > 'handlers': ['s3.task'], > > 'level': LOG_LEVEL, > > 'propagate': True, > > }, > > 'airflow': { > > 'handlers': ['console'], > > 'level': LOG_LEVEL, > > 'propagate': False, > > }, > > } > > } > > ----- > > > > I never see any task logs in S3, even after completion of all tasks. > > > > While running this in docker since I my executors/workers are on > different > > hosts, when I try to pull up the task logs in the UI I receive the > > following error b/c they there in s3: > > > > Failed to fetch log file from worker. > > HTTPConnectionPool(host='f0cf9e596af6', port=8793): Max retries > > exceeded with url: > > > > > > > > Any additional hints you can provide on what else needs to be done? > > > > Thanks. > > > > Regards, > > David > >