修复订阅执行日志输出

This commit is contained in:
whyour 2022-05-17 22:27:41 +08:00
parent 906a074634
commit 7f9c9f05b8
5 changed files with 17 additions and 5 deletions

View File

@ -27,6 +27,7 @@ export interface TaskCallbacks {
endTime: dayjs.Dayjs, endTime: dayjs.Dayjs,
diff: number, diff: number,
) => void; ) => void;
onLog?: (message: string) => void;
onError?: (message: string) => void; onError?: (message: string) => void;
} }
@ -48,9 +49,13 @@ export default class ScheduleService {
callbacks.onStart?.(cp, startTime); callbacks.onStart?.(cp, startTime);
cp.stdout.on('data', (data) => {
callbacks.onLog?.(data.toString());
});
cp.stderr.on('data', (data) => { cp.stderr.on('data', (data) => {
this.logger.error( this.logger.error(
'执行任务%s失败时间%s, 错误信息:%j', '执行任务 %s 失败,时间:%s, 错误信息:%j',
command, command,
new Date().toLocaleString(), new Date().toLocaleString(),
data.toString(), data.toString(),
@ -60,7 +65,7 @@ export default class ScheduleService {
cp.on('error', (err) => { cp.on('error', (err) => {
this.logger.error( this.logger.error(
'执行任务%s失败,时间:%s, 错误信息:%j', '创建任务 %s 失败,时间:%s, 错误信息:%j',
command, command,
new Date().toLocaleString(), new Date().toLocaleString(),
err, err,

View File

@ -181,6 +181,11 @@ export default class SubscriptionService {
const absolutePath = await this.handleLogPath(sub.log_path as string); const absolutePath = await this.handleLogPath(sub.log_path as string);
fs.appendFileSync(absolutePath, `\n${message}`); fs.appendFileSync(absolutePath, `\n${message}`);
}, },
onLog: async (message: string) => {
const sub = await this.getDb({ id: doc.id });
const absolutePath = await this.handleLogPath(sub.log_path as string);
fs.appendFileSync(absolutePath, `\n${message}`);
},
}; };
} }

View File

@ -529,7 +529,9 @@ main() {
esac esac
local end_time=$(date '+%Y-%m-%d %H:%M:%S') local end_time=$(date '+%Y-%m-%d %H:%M:%S')
local diff_time=$(($(date +%s -d "$end_time") - $(date +%s -d "$begin_time"))) local diff_time=$(($(date +%s -d "$end_time") - $(date +%s -d "$begin_time")))
echo -e "\n## 执行结束... $end_time 耗时 $diff_time" >>$log_path if [[ $p1 != "repo" ]] && [[ $p1 != "raw" ]]; then
echo -e "\n## 执行结束... $end_time 耗时 $diff_time" >>$log_path
fi
cat $log_path cat $log_path
} }

View File

@ -29,7 +29,7 @@ import { init } from '../utils/init';
export default function (props: any) { export default function (props: any) {
const ctx = useCtx(); const ctx = useCtx();
const theme = useTheme(); const theme = useTheme();
const [user, setUser] = useState<any>(); const [user, setUser] = useState<any>({});
const [loading, setLoading] = useState<boolean>(true); const [loading, setLoading] = useState<boolean>(true);
const [systemInfo, setSystemInfo] = useState<{ isInitialized: boolean }>(); const [systemInfo, setSystemInfo] = useState<{ isInitialized: boolean }>();
const ws = useRef<any>(null); const ws = useRef<any>(null);

View File

@ -99,7 +99,7 @@ const SecuritySettings = ({ user, userChange }: any) => {
useEffect(() => { useEffect(() => {
setTwoFactorActivated(user && user.twoFactorActivated); setTwoFactorActivated(user && user.twoFactorActivated);
setAvatar(user && `/api/static/${user.avatar}`); setAvatar(user.avatar && `/api/static/${user.avatar}`);
}, [user]); }, [user]);
return twoFactoring ? ( return twoFactoring ? (