Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Airflow 空气流量调节器操作员UNICODEENCODEER错误_Airflow - Fatal编程技术网

Airflow 空气流量调节器操作员UNICODEENCODEER错误

Airflow 空气流量调节器操作员UNICODEENCODEER错误,airflow,Airflow,我在Python3.5上使用的是airflow 1.10.0,遇到了关于日志编码错误的错误 操作员使用输出_编码的默认设置,该设置已经是utf-8 task_compile = BashOperator( task_id='task_compile', retries=1, retry_delay=timedelta(minutes=5), bash_command='/root/docker/tools/compile.sh', dag=dag ) task_compile.set_downs

我在Python3.5上使用的是airflow 1.10.0,遇到了关于日志编码错误的错误

操作员使用输出_编码的默认设置,该设置已经是utf-8

task_compile = BashOperator(
task_id='task_compile',
retries=1,
retry_delay=timedelta(minutes=5),
bash_command='/root/docker/tools/compile.sh',
dag=dag
)
task_compile.set_downstream(task_last)

shell脚本弹出一个docker容器并运行composer安装,我用另一个简单的composer安装任务进行了测试,没有任何失败,错误只是与一组特定的依赖项有关。如跟踪堆栈中所示,当发出要记录到日志文件中的行时,异常的模块响应为file\u task\u handler.py

[2018-09-19 20:42:18,708] {bash_operator.py:111} INFO - Package operations: 134 installs, 0 updates, 0 removals
[2018-09-19 20:42:18,790] {bash_operator.py:111} INFO -   - Installing ocramius/package-versions (1.3.0): Downloading (100%)
[2018-09-19 20:42:18,850] {bash_operator.py:111} INFO -   - Installing symfony/flex (v1.1.1): Downloading (100%)
[2018-09-19 20:42:18,897] {bash_operator.py:111} INFO - 
[2018-09-19 20:42:18,898] {logging_mixin.py:95} WARNING - --- Logging error ---

[2018-09-19 16:12:51554]{logging_mixin.py:95}警告---日志错误---
[2018-09-19 16:12:51555]{logging_mixin.py:95}警告-回溯(最近一次呼叫最后一次):
[2018-09-19 16:12:51555]{logging_mixin.py:95}警告-文件/usr/lib/python3.5/logging/_init__.py”,第983行,在emit中
stream.write(msg)
[2018-09-19 16:12:51555]{logging_mixin.py:95}警告-UnicodeEncodeError:“ascii”编解码器无法对位置81处的字符“\U0001f3b6”进行编码:序号不在范围内(128)
[2018-09-19 16:12:51555]{logging_mixin.py:95}警告-调用堆栈:
[2018-09-19 16:12:51557]{logging_mixin.py:95}警告-文件“/usr/local/bin/afflow”,第32行,在
args.func(args)
[2018-09-19 16:12:51557]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist-packages/afflow/utils/cli.py”,第74行,在包装器中
返回f(*args,**kwargs)
[2018-09-19 16:12:51557]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist packages/aiffort/bin/cli.py”,第498行,正在运行
_运行(args、dag、ti)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist-packages/afflow/bin/cli.py”,第402行,正在运行
pool=args.pool,
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist packages/aiffort/utils/db.py”,第74行,在包装器中
返回函数(*args,**kwargs)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist packages/afflow/models.py”,第1633行,在原始任务中
结果=任务\复制.执行(上下文=上下文)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist packages/aiffort/operators/bash_operator.py”,第110行,执行
self.log.info(行)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件/usr/lib/python3.5/logging/_init__.py”,信息中第1280行
自我记录(信息、消息、参数、**kwargs)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件/usr/lib/python3.5/logging/_init__.py”,日志1416行
自我处理(记录)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件/usr/lib/python3.5/logging/_init__.py”,第1426行,在句柄中
self.callHandlers(记录)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件“/usr/lib/python3.5/logging/_init__.py”,第1488行,在callHandlers中
hdlr.句柄(记录)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件/usr/lib/python3.5/logging/_init__.py”,第856行,在句柄中
self.emit(记录)
[2018-09-19 16:12:51558]{logging_mixin.py:95}警告-文件“/usr/local/lib/python3.5/dist packages/afflow/utils/log/File_task_handler.py”,第61行,在emit中
self.handler.emit(记录)

问题是容器中的区域设置没有设置为UTF-8

面临类似的问题,我可以通过将env变量
LANG=en_US.UTF-8
添加到supervisord配置中并重新启动supervisord来解决

我使用supervisor启动气流调度器、Web服务器和flower


注意:此env变量也需要添加到所有airflow worker节点中。

可能您可以在此处发布操作员代码以了解更多详细信息
[2018-09-19 16:12:51,554] {logging_mixin.py:95} WARNING - --- Logging error ---
[2018-09-19 16:12:51,555] {logging_mixin.py:95} WARNING - Traceback (most recent call last):
[2018-09-19 16:12:51,555] {logging_mixin.py:95} WARNING -   File "/usr/lib/python3.5/logging/__init__.py", line 983, in emit
    stream.write(msg)
[2018-09-19 16:12:51,555] {logging_mixin.py:95} WARNING - UnicodeEncodeError: 'ascii' codec can't encode character '\U0001f3b6' in position 81: ordinal not in range(128)
[2018-09-19 16:12:51,555] {logging_mixin.py:95} WARNING - Call stack:
[2018-09-19 16:12:51,557] {logging_mixin.py:95} WARNING -   File "/usr/local/bin/airflow", line 32, in <module>
    args.func(args)
[2018-09-19 16:12:51,557] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/utils/cli.py", line 74, in wrapper
    return f(*args, **kwargs)
[2018-09-19 16:12:51,557] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/bin/cli.py", line 498, in run
    _run(args, dag, ti)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/bin/cli.py", line 402, in _run
    pool=args.pool,
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/utils/db.py", line 74, in wrapper
    return func(*args, **kwargs)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/models.py", line 1633, in _run_raw_task
    result = task_copy.execute(context=context)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/operators/bash_operator.py", line 110, in execute
    self.log.info(line)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/lib/python3.5/logging/__init__.py", line 1280, in info
    self._log(INFO, msg, args, **kwargs)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/lib/python3.5/logging/__init__.py", line 1416, in _log
    self.handle(record)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/lib/python3.5/logging/__init__.py", line 1426, in handle
    self.callHandlers(record)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/lib/python3.5/logging/__init__.py", line 1488, in callHandlers
    hdlr.handle(record)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/lib/python3.5/logging/__init__.py", line 856, in handle
    self.emit(record)
[2018-09-19 16:12:51,558] {logging_mixin.py:95} WARNING -   File "/usr/local/lib/python3.5/dist-packages/airflow/utils/log/file_task_handler.py", line 61, in emit
    self.handler.emit(record)