package app import ( "fmt" "sort" "github.com/seaweedfs/seaweedfs/weed/admin/maintenance" "github.com/seaweedfs/seaweedfs/weed/storage/erasure_coding" ) // sortedKeys returns the sorted keys for a string map func sortedKeys(m map[string]string) []string { keys := make([]string, 0, len(m)) for k := range m { keys = append(keys, k) } sort.Strings(keys) return keys } templ TaskDetail(data *maintenance.TaskDetailData) {
{data.Task.ID}
{data.Task.WorkerID}
{data.Task.DetailedReason}
{data.Task.Error}
{source.Node}
{target.Node}
{data.WorkerInfo.ID}
{data.WorkerInfo.Address}
Worker ID | Worker Address | Assigned At | Unassigned At | Reason |
---|---|---|---|---|
{assignment.WorkerID} |
{assignment.WorkerAddress} |
{assignment.AssignedAt.Format("2006-01-02 15:04:05")} | if assignment.UnassignedAt != nil { {assignment.UnassignedAt.Format("2006-01-02 15:04:05")} } else { — } | {assignment.Reason} |
Timestamp | Level | Message | Details |
---|---|---|---|
{log.Timestamp.Format("15:04:05")} | if log.Level == "error" { {log.Level} } else if log.Level == "warn" { {log.Level} } else if log.Level == "info" { {log.Level} } else { {log.Level} } | {log.Message} |
if log.Fields != nil && len(log.Fields) > 0 { for _, k := range sortedKeys(log.Fields) { {k}={log.Fields[k]} } } else if log.Progress != nil || log.Status != "" { if log.Progress != nil { progress={fmt.Sprintf("%.0f%%", *log.Progress)} } if log.Status != "" { status={log.Status} } } else { - } |
Task ID | Type | Status | Volume ID | Server | Created |
---|---|---|---|---|---|
{relatedTask.ID}
|
{string(relatedTask.Type)} | if relatedTask.Status == maintenance.TaskStatusCompleted { Completed } else if relatedTask.Status == maintenance.TaskStatusFailed { Failed } else if relatedTask.Status == maintenance.TaskStatusInProgress { In Progress } else { {string(relatedTask.Status)} } | if relatedTask.VolumeID != 0 { {fmt.Sprintf("%d", relatedTask.VolumeID)} } else { - } |
if relatedTask.Server != "" {
{relatedTask.Server}
} else {
-
}
|
{relatedTask.CreatedAt.Format("2006-01-02 15:04:05")} |