Class ConnectionMetricsInterceptor
- Namespace
- FishMMO.Database.Npgsql.Monitoring.Metrics
- Assembly
- FishMMO-DB.dll
EF Core interceptor that tracks database connection open/close events. This is used to approximate Npgsql pool utilization by measuring how many DbConnections are currently open (checked out from the pool).
public sealed class ConnectionMetricsInterceptor : DbConnectionInterceptor, IDbConnectionInterceptor, IInterceptor
- Inheritance
-
ConnectionMetricsInterceptor
- Implements
- Inherited Members
Constructors
ConnectionMetricsInterceptor(ConnectionPoolMetrics)
Initializes a new instance of the ConnectionMetricsInterceptor class.
public ConnectionMetricsInterceptor(ConnectionPoolMetrics metrics)
Parameters
metricsConnectionPoolMetricsMetrics sink to update.
Methods
ConnectionClosed(DbConnection, ConnectionEndEventData)
Called just after EF has called Close() in an async context.
public override void ConnectionClosed(DbConnection connection, ConnectionEndEventData eventData)
Parameters
connectionDbConnectionThe connection.
eventDataConnectionEndEventDataContextual information about the connection.
ConnectionClosedAsync(DbConnection, ConnectionEndEventData)
Called just after EF has called CloseAsync().
public override Task ConnectionClosedAsync(DbConnection connection, ConnectionEndEventData eventData)
Parameters
connectionDbConnectionThe connection.
eventDataConnectionEndEventDataContextual information about the connection.
Returns
ConnectionOpened(DbConnection, ConnectionEndEventData)
Called just after EF has called Open().
public override void ConnectionOpened(DbConnection connection, ConnectionEndEventData eventData)
Parameters
connectionDbConnectionThe connection.
eventDataConnectionEndEventDataContextual information about the connection.
ConnectionOpenedAsync(DbConnection, ConnectionEndEventData, CancellationToken)
Called just after EF has called OpenAsync().
public override Task ConnectionOpenedAsync(DbConnection connection, ConnectionEndEventData eventData, CancellationToken cancellationToken = default)
Parameters
connectionDbConnectionThe connection.
eventDataConnectionEndEventDataContextual information about the connection.
cancellationTokenCancellationTokenThe cancellation token.