github.com/crowdsecurity/crowdsec@v1.6.1/pkg/acquisition/modules/loki/timestamp.go (about)

     1  package loki
     2  
     3  import (
     4  	"fmt"
     5  	"time"
     6  )
     7  
     8  type timestamp time.Time
     9  
    10  func (t *timestamp) UnmarshalYAML(unmarshal func(interface{}) error) error {
    11  	var tt time.Time
    12  	err := unmarshal(&tt)
    13  	if err == nil {
    14  		*t = timestamp(tt)
    15  		return nil
    16  	}
    17  	var d time.Duration
    18  	err = unmarshal(&d)
    19  	if err == nil {
    20  		*t = timestamp(time.Now().Add(-d))
    21  		fmt.Println("t", time.Time(*t).Format(time.RFC3339))
    22  		return nil
    23  	}
    24  	return err
    25  }
    26  
    27  func (t *timestamp) IsZero() bool {
    28  	return time.Time(*t).IsZero()
    29  }