šŸš€ Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more →
Socket
Sign inDemoInstall
Socket

AspNetCore.HealthChecks.MySql

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

AspNetCore.HealthChecks.MySql

HealthChecks.MySql is the health check package for MySQL.

9.0.0
NuGet
Version published
Maintainers
1
Created
Source

MySQL Health Check

This health check verifies the ability to communicate with a MySQL Server. It uses the provided MySqlDataSource or a connection string to connect to the server.

Defaults

By default, the MySqlDataSource instance is resolved from service provider. (This should be the same as the instance being used by the application; do not create a new MySqlDataSource just for the health check.) The health check will send a MySQL "ping" packet to the server to verify connectivity.

builder.Services
    .AddMySqlDataSource(builder.Configuration.GetConnectionString("mysql")) // using the MySqlConnector.DependencyInjection package
    .AddHealthChecks().AddMySql();

Connection String

You can also specify a connection string directly:

builder.Services.AddHealthChecks().AddMySql(connectionString: "Server=...;User Id=...;Password=...");

This can be useful if you're not using MySqlDataSource in your application.

Customization

You can additionally add the following parameters:

  • healthQuery: A query to run against the server. If null (the default), the health check will send a MySQL "ping" packet to the server.
  • configure: An action to configure the MySqlConnection object. This is called after the MySqlConnection is created but before the connection is opened.
  • name: The health check name. The default is mysql.
  • failureStatus: The HealthStatus that should be reported when the health check fails. Default is HealthStatus.Unhealthy.
  • tags: A list of tags that can be used to filter sets of health checks.
  • timeout: A System.TimeSpan representing the timeout of the check.
builder.Services
    .AddMySqlDataSource(builder.Configuration.GetConnectionString("mysql"))
    .AddHealthChecks().AddMySql(
        healthQuery: "SELECT 1;",
        configure: conn => conn.ConnectTimeout = 3,
        name: "MySQL"
    );

Breaking changes

In previous versions, MySqlHealthCheck defaulted to testing connectivity by sending a SELECT 1; query to the server. It has been changed to send a more efficient "ping" packet instead. To restore the previous behavior, specify healthQuery: "SELECT 1;" when registering the health check.

While not a breaking change, it's now preferred to use MySqlDataSource instead of a connection string. This allows the health check to use the same connection pool as the rest of the application. This can be achieved by calling the .AddMySql() overload that has no required parameters. The health check assumes that a MySqlDataSource instance has been registered with the service provider and will retrieve it automatically.

Keywords

HealthCheck

FAQs

Package last updated on 19 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts