状态上报,减少错误字段

This commit is contained in:
大石头 2020-09-07 23:07:38 +08:00
parent 58effda6b0
commit 4150b5b622
5 changed files with 9 additions and 82 deletions

View File

@ -16,8 +16,6 @@ namespace AntJob.Data.Entity
[Description("作业错误")]
[BindIndex("IX_JobError_AppID_ID", false, "AppID,ID")]
[BindIndex("IX_JobError_JobID_ID", false, "JobID,ID")]
[BindIndex("IX_JobError_Key", false, "Key")]
[BindIndex("IX_JobError_ErrorCode", false, "ErrorCode")]
[BindTable("JobError", Description = "作业错误", ConnName = "Ant", DbType = DatabaseType.None)]
public partial class JobError
{
@ -78,22 +76,6 @@ namespace AntJob.Data.Entity
[BindColumn("End", "结束。小于,不等于", "")]
public DateTime End { get => _End; set { if (OnPropertyChanging("End", value)) { _End = value; OnPropertyChanged("End"); } } }
private Int32 _BatchSize;
/// <summary>批大小</summary>
[DisplayName("批大小")]
[Description("批大小")]
[DataObjectField(false, false, false, 0)]
[BindColumn("BatchSize", "批大小", "")]
public Int32 BatchSize { get => _BatchSize; set { if (OnPropertyChanging("BatchSize", value)) { _BatchSize = value; OnPropertyChanged("BatchSize"); } } }
private String _Key;
/// <summary>数据键</summary>
[DisplayName("数据键")]
[Description("数据键")]
[DataObjectField(false, false, true, 50)]
[BindColumn("Key", "数据键", "")]
public String Key { get => _Key; set { if (OnPropertyChanging("Key", value)) { _Key = value; OnPropertyChanged("Key"); } } }
private String _Data;
/// <summary>数据</summary>
[DisplayName("数据")]
@ -118,14 +100,6 @@ namespace AntJob.Data.Entity
[BindColumn("ProcessID", "进程", "")]
public Int32 ProcessID { get => _ProcessID; set { if (OnPropertyChanging("ProcessID", value)) { _ProcessID = value; OnPropertyChanged("ProcessID"); } } }
private String _ErrorCode;
/// <summary>错误码</summary>
[DisplayName("错误码")]
[Description("错误码")]
[DataObjectField(false, false, true, 50)]
[BindColumn("ErrorCode", "错误码", "")]
public String ErrorCode { get => _ErrorCode; set { if (OnPropertyChanging("ErrorCode", value)) { _ErrorCode = value; OnPropertyChanged("ErrorCode"); } } }
private String _Message;
/// <summary>内容</summary>
[DisplayName("内容")]
@ -168,12 +142,9 @@ namespace AntJob.Data.Entity
case "Client": return _Client;
case "Start": return _Start;
case "End": return _End;
case "BatchSize": return _BatchSize;
case "Key": return _Key;
case "Data": return _Data;
case "Server": return _Server;
case "ProcessID": return _ProcessID;
case "ErrorCode": return _ErrorCode;
case "Message": return _Message;
case "CreateTime": return _CreateTime;
case "UpdateTime": return _UpdateTime;
@ -191,12 +162,9 @@ namespace AntJob.Data.Entity
case "Client": _Client = Convert.ToString(value); break;
case "Start": _Start = value.ToDateTime(); break;
case "End": _End = value.ToDateTime(); break;
case "BatchSize": _BatchSize = value.ToInt(); break;
case "Key": _Key = Convert.ToString(value); break;
case "Data": _Data = Convert.ToString(value); break;
case "Server": _Server = Convert.ToString(value); break;
case "ProcessID": _ProcessID = value.ToInt(); break;
case "ErrorCode": _ErrorCode = Convert.ToString(value); break;
case "Message": _Message = Convert.ToString(value); break;
case "CreateTime": _CreateTime = value.ToDateTime(); break;
case "UpdateTime": _UpdateTime = value.ToDateTime(); break;
@ -231,12 +199,6 @@ namespace AntJob.Data.Entity
/// <summary>结束。小于,不等于</summary>
public static readonly Field End = FindByName("End");
/// <summary>批大小</summary>
public static readonly Field BatchSize = FindByName("BatchSize");
/// <summary>数据键</summary>
public static readonly Field Key = FindByName("Key");
/// <summary>数据</summary>
public static readonly Field Data = FindByName("Data");
@ -246,9 +208,6 @@ namespace AntJob.Data.Entity
/// <summary>进程</summary>
public static readonly Field ProcessID = FindByName("ProcessID");
/// <summary>错误码</summary>
public static readonly Field ErrorCode = FindByName("ErrorCode");
/// <summary>内容</summary>
public static readonly Field Message = FindByName("Message");
@ -285,12 +244,6 @@ namespace AntJob.Data.Entity
/// <summary>结束。小于,不等于</summary>
public const String End = "End";
/// <summary>批大小</summary>
public const String BatchSize = "BatchSize";
/// <summary>数据键</summary>
public const String Key = "Key";
/// <summary>数据</summary>
public const String Data = "Data";
@ -300,9 +253,6 @@ namespace AntJob.Data.Entity
/// <summary>进程</summary>
public const String ProcessID = "ProcessID";
/// <summary>错误码</summary>
public const String ErrorCode = "ErrorCode";
/// <summary>内容</summary>
public const String Message = "Message";

View File

@ -176,12 +176,9 @@
<Column Name="Client" DataType="String" Description="客户端。IP加进程" />
<Column Name="Start" DataType="DateTime" Description="开始。大于等于" />
<Column Name="End" DataType="DateTime" Description="结束。小于,不等于" />
<Column Name="BatchSize" DataType="Int32" Description="批大小" />
<Column Name="Key" DataType="String" Description="数据键" />
<Column Name="Data" DataType="String" Length="2000" Description="数据" />
<Column Name="Server" DataType="String" Description="服务器" />
<Column Name="ProcessID" DataType="Int32" Description="进程" />
<Column Name="ErrorCode" DataType="String" Description="错误码" />
<Column Name="Message" DataType="String" Length="2000" Description="内容" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" />
@ -189,8 +186,6 @@
<Indexes>
<Index Columns="AppID,ID" />
<Index Columns="JobID,ID" />
<Index Columns="Key" />
<Index Columns="ErrorCode" />
</Indexes>
</Table>
<Table Name="AppMessage" Description="应用消息。消息调度,某些作业负责生产消息,供其它作业进行消费处理">

View File

@ -312,13 +312,14 @@ namespace AntJob.Server
var next = (DateTime)(ext[nextKey] ?? DateTime.MinValue);
if (next < now)
{
var ps = ControllerContext.Current.Parameters;
var server = ps["server"] + "";
var pid = ps["pid"].ToInt();
//var ps = ControllerContext.Current.Parameters;
//var server = ps["server"] + "";
//var pid = ps["pid"].ToInt();
var online = GetOnline(app, _Net);
var ip = _Net.Remote.Host;
next = now.AddSeconds(60);
list.AddRange(jb.AcquireOld(server, ip, pid, count));
list.AddRange(jb.AcquireOld(online.Server, ip, online.ProcessId, count));
if (list.Count > 0)
{
@ -450,9 +451,7 @@ namespace AntJob.Server
}
if (task.Status == JobStatus.)
{
var ps = ControllerContext.Current.Parameters;
SetJobError(job, jt, ps);
SetJobError(job, jt);
jt.Error++;
//ji.Message = err.Message;
@ -495,15 +494,16 @@ namespace AntJob.Server
//job.Save();
}
private JobError SetJobError(Job job, JobTask task, IDictionary<String, Object> ps)
private JobError SetJobError(Job job, JobTask task)
{
var err = new JobError
{
AppID = job.AppID,
JobID = job.ID,
TaskID = task.ID,
Start = task.Start,
End = task.End,
BatchSize = task.BatchSize,
Data = task.Data,
Server = task.Server,
ProcessID = task.ProcessID,
@ -512,12 +512,6 @@ namespace AntJob.Server
CreateTime = DateTime.Now,
UpdateTime = DateTime.Now,
};
err.Key = task.Key;
err.Data = ps["Data"] + "";
var code = ps["ErrorCode"] + "";
if (code != nameof(Exception)) code = code.TrimEnd(nameof(Exception));
err.ErrorCode = code;
var msg = task.Message;
if (!msg.IsNullOrEmpty() && msg.Contains("Exception:")) msg = msg.Substring("Exception:").Trim();

View File

@ -23,9 +23,6 @@
<th class="text-center hidden-md hidden-sm hidden-xs"><a href="@Html.Raw(page.GetSortUrl("ID"))">编号</a></th>
<th class="text-center"><a href="@Html.Raw(page.GetSortUrl("AppID"))">应用</a></th>
<th class="text-center" style="min-width:134px;"><a href="@Html.Raw(page.GetSortUrl("TaskItemID"))">任务项</a></th>
<th class="text-center"><a href="@Html.Raw(page.GetSortUrl("BatchSize"))">批大小</a></th>
<th class="text-center"><a href="@Html.Raw(page.GetSortUrl("Key"))">数据键</a></th>
<th class="text-center"><a href="@Html.Raw(page.GetSortUrl("ErrorCode"))">错误码</a></th>
<th class="text-center">内容</th>
<th class="text-center" style="min-width:134px;"><a href="@Html.Raw(page.GetSortUrl("UpdateTime"))">更新时间</a></th>
@if (this.Has(PermissionFlags.Detail, PermissionFlags.Update, PermissionFlags.Delete))
@ -41,9 +38,6 @@
<td class="text-center hidden-md hidden-sm hidden-xs">@entity.ID</td>
<td><a href="Job?AppID=@entity.AppID">@entity.AppName</a></td>
<td><a href="JobTask?JobID=@entity.JobID">@entity.JobName</a></td>
<td class="text-right">@entity.BatchSize.ToString("n0")</td>
<td>@entity.Key</td>
<td>@entity.ErrorCode</td>
<td class="OverFlow" title="@entity.Message">@entity.Message</td>
<td>@entity.UpdateTime.ToFullString("")</td>
@if (this.Has(PermissionFlags.Detail, PermissionFlags.Update, PermissionFlags.Delete))

View File

@ -166,9 +166,6 @@ namespace AntJob.Providers
task.Total = ctx.Total;
task.Success = ctx.Success;
//task.Server = _MachineName;
//task.ProcessID = _ProcessID;
Report(ctx.Handler.Job, task);
}
@ -183,9 +180,6 @@ namespace AntJob.Providers
task.Success = ctx.Success;
task.Times++;
//task.Server = _MachineName;
//task.ProcessID = _ProcessID;
// 区分正常完成还是错误终止
if (ctx.Error != null)
{