[xuxueli/xxl-job]python任务日志乱码

2024-06-26 495 views
5

python版本 3.8.3

中文日志正常查看

在调度中心里查看日志是乱码的。 去执行器机器查看对应的日志是正常的

GLUE(Python) 任务

手动执行1次。

python代码 `#!/usr/bin/python

-- coding: UTF-8 --

import time import sys

print ("xxl-job: hello python")

print ("脚本位置:"+sys.argv[0]) print ("任务参数:"+ sys.argv[1]) print ("分片序号:"+ sys.argv[2]) if len(sys.argv) > 3: print ("分片总数:"+ sys.argv[3])

print ("Good bye!") exit(0) `

Other information

2023-06-05 14:42:31 [com.xxl.job.core.thread.JobThread#run]-[133]-[xxl-job, JobThread-3-1685947293094] ----------- xxl-job job execute start ----------- ----------- Param: 2023-06-05 14:42:31 [com.xxl.job.core.handler.impl.ScriptJobHandler#execute]-[80]-[xxl-job, JobThread-3-1685947293094] ----------- script file:data\applogs\xxl-job\jobhandler\gluesource\3_1685946747000.py ----------- xxl-job: hello python �ű�λ�ã�data\applogs\xxl-job\jobhandler\gluesource\3_1685946747000.py ���������0 ��Ƭ��ţ�1 Good bye! 2023-06-05 14:42:31 [com.xxl.job.core.thread.JobThread#run]-[179]-[xxl-job, JobThread-3-1685947293094] ----------- xxl-job job execute end(finish) ----------- ----------- Result: handleCode=200, handleMsg = null 2023-06-05 14:42:31 [com.xxl.job.core.thread.TriggerCallbackThread#callbackLog]-[197]-[xxl-job, executor TriggerCallbackThread] ----------- xxl-job job callback finish.

回答

5

同时测试了下 GLUE(PowerShell) GLUE(java) 均正常。目前就python日志异常。

9

解决了。 这个是window powershell 出现的问题。 默认的编码是 gbk(936) 需要改成 utf-8(65001)

修改的方法是 在powershell 里启动 执行器之前,先 执行

chcp 65001

调度中心获取的日志应该是实时获取的。而非读取日志文件里。因此调度中心的日志乱码,而执行器的日志不乱码。

2

非常奇怪。昨天好好的。中间拷贝了1次jar到另外一个目录,然后继续运行时,又出现乱码。

之前的不一样, 代码中写的中文,能正常不乱码。传递的参数如果中文则乱码

`2023-06-06 15:02:48 [com.xxl.job.core.thread.JobThread#run]-[133]-[xxl-job, JobThread-4-1686034964985] ----------- xxl-job job execute start ----------- ----------- Param:参数1 参数2 2023-06-06 15:02:48 [com.xxl.job.core.handler.impl.ScriptJobHandler#execute]-[80]-[xxl-job, JobThread-4-1686034964985] ----------- script file:data\applogs\xxl-job\jobhandler\gluesource\4_1685946979000.ps1 ----------- xxl-job: hello powershell 脚本位置: D:\xxl-job-local\data\applogs\xxl-job\jobhandler\gluesource\4_1685946979000.ps1 任务参数: ����1 ����2 分片序号: 0 分片总数: 1 Good bye! 2023-06-06 15:02:48 [com.xxl.job.core.thread.JobThread#run]-[179]-[xxl-job, JobThread-4-1686034964985] ----------- xxl-job job execute end(finish) ----------- ----------- Result: handleCode=200, handleMsg = null 2023-06-06 15:02:48 [com.xxl.job.core.thread.TriggerCallbackThread#callbackLog]-[197]-[xxl-job, executor TriggerCallbackThread] ----------- xxl-job job callback finish.

[Load Log Finish]`

9

python 则 整个乱码。 代码中的中文,和传递的参数都是乱码

`2023-06-06 15:08:41 [com.xxl.job.core.thread.JobThread#run]-[133]-[xxl-job, JobThread-5-1686035282152] ----------- xxl-job job execute start ----------- ----------- Param:p1 p2 p3 p4 参数5 2023-06-06 15:08:41 [com.xxl.job.core.handler.impl.ScriptJobHandler#execute]-[80]-[xxl-job, JobThread-5-1686035282152] ----------- script file:data\applogs\xxl-job\jobhandler\gluesource\5_1686032627000.py ----------- xxl-job: hello python �ļ� path:data\applogs\xxl-job\jobhandler\gluesource\5_1686032627000.py ���� params:p1 p2 p3 p4 ����5 ���� id:0 ���� count:1 Good bye! 2023-06-06 15:08:41 [com.xxl.job.core.thread.JobThread#run]-[179]-[xxl-job, JobThread-5-1686035282152] ----------- xxl-job job execute end(finish) ----------- ----------- Result: handleCode=200, handleMsg = null 2023-06-06 15:08:41 [com.xxl.job.core.thread.TriggerCallbackThread#callbackLog]-[197]-[xxl-job, executor TriggerCallbackThread] ----------- xxl-job job callback finish.

[Load Log Finish]`

执行器上的日志文件,如果是Python 没乱码。如果是powershell 则乱码