改进命令输出:显示完整的标准输出和错误输出
This commit is contained in:
parent
40eae7180c
commit
1813a448e8
|
|
@ -54,15 +54,31 @@ class Deployer:
|
||||||
timeout=timeout
|
timeout=timeout
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# 始终输出标准输出(如果有)
|
||||||
if result.stdout:
|
if result.stdout:
|
||||||
self.logger.debug(f"标准输出:\n{result.stdout}")
|
# 限制输出长度,避免日志过大
|
||||||
|
stdout_lines = result.stdout.strip().split('\n')
|
||||||
|
if len(stdout_lines) > 50:
|
||||||
|
self.logger.info(f"标准输出 (前30行):\n" + '\n'.join(stdout_lines[:30]))
|
||||||
|
self.logger.info(f"... (省略 {len(stdout_lines) - 50} 行)")
|
||||||
|
self.logger.info(f"标准输出 (后20行):\n" + '\n'.join(stdout_lines[-20:]))
|
||||||
|
else:
|
||||||
|
self.logger.info(f"标准输出:\n{result.stdout.strip()}")
|
||||||
|
|
||||||
if result.returncode != 0:
|
if result.returncode != 0:
|
||||||
self.logger.error(f"命令执行失败 (退出码: {result.returncode})")
|
self.logger.error(f"命令执行失败 (退出码: {result.returncode})")
|
||||||
if result.stderr:
|
if result.stderr:
|
||||||
self.logger.error(f"错误输出:\n{result.stderr}")
|
# 限制错误输出长度
|
||||||
|
stderr_lines = result.stderr.strip().split('\n')
|
||||||
|
if len(stderr_lines) > 50:
|
||||||
|
self.logger.error(f"错误输出 (前30行):\n" + '\n'.join(stderr_lines[:30]))
|
||||||
|
self.logger.error(f"... (省略 {len(stderr_lines) - 50} 行)")
|
||||||
|
self.logger.error(f"错误输出 (后20行):\n" + '\n'.join(stderr_lines[-20:]))
|
||||||
|
else:
|
||||||
|
self.logger.error(f"错误输出:\n{result.stderr.strip()}")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
self.logger.info("命令执行成功")
|
||||||
return True
|
return True
|
||||||
except subprocess.TimeoutExpired:
|
except subprocess.TimeoutExpired:
|
||||||
self.logger.error(f"命令执行超时 (超时时间: {timeout}秒)")
|
self.logger.error(f"命令执行超时 (超时时间: {timeout}秒)")
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue