@@ -62,21 +62,30 @@ func (e Event) Validate() error {
62
62
return errInvalidPhase
63
63
case e .PhaseStartTime .IsZero ():
64
64
return errors .New ("property phaseStartTime is required" )
65
- case e .PhaseStartTime .After (time .Now ()):
65
+ case e .PhaseStartTime .After (time .Now (). Add ( 24 * time . Hour ) ):
66
66
return errors .New ("property phaseStartTime cannot be in the future" )
67
67
case e .EventName == "" :
68
68
return errors .New ("property eventName is required" )
69
69
case ! validEventCode (e .EventName ):
70
70
return errInvalidEventCode
71
71
case e .EventTime .IsZero ():
72
72
return errors .New ("property eventTime is required" )
73
- case e .EventTime .After (time .Now ()):
73
+ case e .EventTime .After (time .Now (). Add ( 24 * time . Hour ) ):
74
74
return errors .New ("property eventTime cannot be in the future" )
75
75
default :
76
76
_ , err := cid .Decode (e .Cid )
77
77
if err != nil {
78
78
return fmt .Errorf ("cid must be valid: %w" , err )
79
79
}
80
+ // a few non rejecting weird cases we want to write a log about to monitor
81
+ switch {
82
+ case e .PhaseStartTime .After (time .Now ()):
83
+ logger .Warnf ("phaseStartTime (%s) ahead of current time (%s) for event %s, source %s" ,
84
+ e .PhaseStartTime , time .Now (), e .EventName , e .InstanceId )
85
+ case e .EventTime .After (time .Now ()):
86
+ logger .Warnf ("eventTime (%s) ahead of current time (%s) for event %s, source %s" ,
87
+ e .EventTime , time .Now (), e .EventName , e .InstanceId )
88
+ }
80
89
return nil
81
90
}
82
91
}
0 commit comments