spug icon indicating copy to clipboard operation
spug copied to clipboard

Bug: 前端日志输出xterm滚动行数限制导致日志截断问题

Open onecer opened this issue 2 years ago • 5 comments

Spug 版本: 所有

问题重现步骤

  1. 输出日志超过1000行
  2. 查看日志

报错/问题截图

期望的结果

能看到更多的日志

xterm的 Terminal 有个属性scrollback 默认是1000. 实际在前端构建中,依赖输出之类的,日志经常超过1000行。导致超过这个行数的日志,虽然后端返回了完整的数据,但是在前端展示中无法看到前面的日志。

修复: 设置为一个较大的值比如5000或者 Infinity 无穷,可以涵盖更多的日志,

如下:

cat ./spug_web/src/pages/deploy/request/OutView.js 
/**
 * Copyright (c) OpenSpug Organization. https://github.com/openspug/spug
 * Copyright (c) <[email protected]>
 * Released under the AGPL-3.0 License.
 */
import React, { useEffect, useRef } from 'react';
import { FitAddon } from 'xterm-addon-fit';
import { Terminal } from 'xterm';

function OutView(props) {
  const el = useRef()

  useEffect(() => {
    setTimeout(() => {
      const fitPlugin = new FitAddon()
      const term = new Terminal({disableStdin: true, scrollback: 5000})

onecer avatar Mar 14 '23 09:03 onecer

老哥为啥不提PR呢

NagaResst avatar Mar 15 '23 03:03 NagaResst

老哥为啥不提PR呢

因为不确定是不是作者故意就留着限制这个,所以发出来讨论下,其次这个改起来也不麻烦。

onecer avatar Mar 15 '23 03:03 onecer

这个还真没留意过,你可以帮测试下改的无限大,是否会有性能问题。

vapao avatar Mar 15 '23 08:03 vapao

这个还真没留意过,你可以帮测试下改的无限大,是否会有性能问题。

应该日志非常多才会,我自己尝试了下自己业务的输出,万行一下的,没啥问题。

onecer avatar Mar 15 '23 09:03 onecer

image 如果改的话,这么多处要改

onecer avatar Mar 15 '23 09:03 onecer