mirror of
https://github.com/zrepl/zrepl.git
synced 2025-05-31 07:09:47 +02:00
parent
4b3d83ec1f
commit
835cf6b12f
@ -236,8 +236,9 @@ func doControlStatusCmd(cmd *cobra.Command, args []string) {
|
|||||||
fmt.Fprint(&header, "<idle>")
|
fmt.Fprint(&header, "<idle>")
|
||||||
}
|
}
|
||||||
fmt.Fprint(&header, " ")
|
fmt.Fprint(&header, " ")
|
||||||
|
const TASK_STALLED_HOLDOFF_DURATION = 10 * time.Second
|
||||||
|
sinceLastUpdate := now.Sub(task.LastUpdate)
|
||||||
if !task.Idle || task.ProgressRx != 0 || task.ProgressTx != 0 {
|
if !task.Idle || task.ProgressRx != 0 || task.ProgressTx != 0 {
|
||||||
|
|
||||||
fmt.Fprintf(&header, "(%s / %s , Rx/Tx",
|
fmt.Fprintf(&header, "(%s / %s , Rx/Tx",
|
||||||
humanize.Bytes(uint64(task.ProgressRx)),
|
humanize.Bytes(uint64(task.ProgressRx)),
|
||||||
humanize.Bytes(uint64(task.ProgressTx)))
|
humanize.Bytes(uint64(task.ProgressTx)))
|
||||||
@ -247,6 +248,12 @@ func doControlStatusCmd(cmd *cobra.Command, args []string) {
|
|||||||
fmt.Fprint(&header, ")")
|
fmt.Fprint(&header, ")")
|
||||||
}
|
}
|
||||||
fmt.Fprint(&header, "\n")
|
fmt.Fprint(&header, "\n")
|
||||||
|
if !task.Idle && !task.LastUpdate.IsZero() && sinceLastUpdate >= TASK_STALLED_HOLDOFF_DURATION {
|
||||||
|
fmt.Fprintf(&header, " WARNING: last update %s ago at %s)",
|
||||||
|
sinceLastUpdate.String(),
|
||||||
|
task.LastUpdate.Format(HumanFormatterDateFormat))
|
||||||
|
fmt.Fprint(&header, "\n")
|
||||||
|
}
|
||||||
io.Copy(os.Stdout, &header)
|
io.Copy(os.Stdout, &header)
|
||||||
|
|
||||||
var logBuf bytes.Buffer
|
var logBuf bytes.Buffer
|
||||||
|
@ -44,6 +44,8 @@ type HumanFormatter struct {
|
|||||||
ignoreFields map[string]bool
|
ignoreFields map[string]bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const HumanFormatterDateFormat = time.RFC3339
|
||||||
|
|
||||||
func (f *HumanFormatter) SetMetadataFlags(flags MetadataFlags) {
|
func (f *HumanFormatter) SetMetadataFlags(flags MetadataFlags) {
|
||||||
f.metadataFlags = flags
|
f.metadataFlags = flags
|
||||||
}
|
}
|
||||||
@ -69,7 +71,7 @@ func (f *HumanFormatter) Format(e *logger.Entry) (out []byte, err error) {
|
|||||||
var line bytes.Buffer
|
var line bytes.Buffer
|
||||||
|
|
||||||
if f.metadataFlags&MetadataTime != 0 {
|
if f.metadataFlags&MetadataTime != 0 {
|
||||||
fmt.Fprintf(&line, "%s ", e.Time.Format(time.RFC3339))
|
fmt.Fprintf(&line, "%s ", e.Time.Format(HumanFormatterDateFormat))
|
||||||
}
|
}
|
||||||
if f.metadataFlags&MetadataLevel != 0 {
|
if f.metadataFlags&MetadataLevel != 0 {
|
||||||
fmt.Fprintf(&line, "[%s]", e.Level.Short())
|
fmt.Fprintf(&line, "[%s]", e.Level.Short())
|
||||||
|
Loading…
x
Reference in New Issue
Block a user