2017-08-28 10:50:02 +00:00
|
|
|
package accesslog
|
|
|
|
|
|
|
|
import (
|
|
|
|
"net/http"
|
|
|
|
)
|
|
|
|
|
|
|
|
// SaveRetries is an implementation of RetryListener that stores RetryAttempts in the LogDataTable.
|
|
|
|
type SaveRetries struct{}
|
|
|
|
|
|
|
|
// Retried implements the RetryListener interface and will be called for each retry that happens.
|
|
|
|
func (s *SaveRetries) Retried(req *http.Request, attempt int) {
|
|
|
|
// it is the request attempt x, but the retry attempt is x-1
|
|
|
|
if attempt > 0 {
|
|
|
|
attempt--
|
|
|
|
}
|
|
|
|
|
2018-11-14 09:18:03 +00:00
|
|
|
table := GetLogData(req)
|
|
|
|
if table != nil {
|
|
|
|
table.Core[RetryAttempts] = attempt
|
|
|
|
}
|
2017-08-28 10:50:02 +00:00
|
|
|
}
|