middleware

package
v0.0.0-...-fc760f8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2024 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AppMetrics = GlobalMetrics{}

Globale Instanz der Metriken

Functions

func BannList

func BannList() gin.HandlerFunc

func GetIP

func GetIP(c *gin.Context) string

func MetricsMiddleware

func MetricsMiddleware() gin.HandlerFunc

Middleware zur Erfassung von Metriken

func RateLimiterMiddleware

func RateLimiterMiddleware(config RateLimiterConfig) gin.HandlerFunc

func UpdateRequestMetrics

func UpdateRequestMetrics(requestSize, responseSize int64, duration time.Duration)

Funktion zur Aktualisierung der Anfragemetriken

Types

type GlobalMetrics

type GlobalMetrics struct {
	sync.RWMutex
	TotalRequests     int64
	TotalRequestSize  int64
	TotalResponseSize int64
	TotalDuration     time.Duration
}

type RateLimiterConfig

type RateLimiterConfig struct {
	Rate   int
	Burst  int
	Window time.Duration
}

type RequestCounter

type RequestCounter struct {
	Count       int
	LastRequest time.Time
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL