gpt4 book ai didi

hangfire - 在Hangfire中将执行的工作记录保存1天以上

转载 作者:行者123 更新时间:2023-12-04 22:58:21 25 4
gpt4 key购买 nike

我刚刚开始使用Hangfire,现在我很喜欢它。

我了解到,Hangfire将成功工作的历史记录保留了1天,之后将其清除。

有没有一种方法可以自定义此默认行为并将历史记录保留任何持续时间(例如7天)?

最佳答案

为此,您需要创建一个作业过滤器并通过hangfire全局配置对其进行注册,如下所述-
https://discuss.hangfire.io/t/how-to-configure-the-retention-time-of-job/34

创建工作过滤器-

using Hangfire.Common;
using Hangfire.States;
using Hangfire.Storage;
using System;

namespace HangfireDemo
{
public class ProlongExpirationTimeAttribute : JobFilterAttribute, IApplyStateFilter
{
public void OnStateApplied(ApplyStateContext filterContext, IWriteOnlyTransaction transaction)
{
filterContext.JobExpirationTimeout = TimeSpan.FromDays(7);
}

public void OnStateUnapplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
{
context.JobExpirationTimeout = TimeSpan.FromDays(7);
}
}
}

...并在全局作业过滤器中注册-
GlobalJobFilters.Filters.Add(new ProlongExpirationTimeAttribute());

关于hangfire - 在Hangfire中将执行的工作记录保存1天以上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34450884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com