Package reference page maintained from the source documentation in src/HealthChecks.Aws.Sns.

AWS SNS Health Check

This health check verifies the ability to communicate with Amazon SNS and the existence of some topics and its subscriptions. For more information about AWS SNS check the AWS SNS Site

Example Usage

With all of the following examples, you can additionally add the following parameters:

Check existence of a topic and loads credentials from the application's default configuration

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddTopicAndSubscriptions(options =>
        {
            options.AddTopic("topicName");
        });
}

Check existence of a topic and directly pass credentials

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddTopicAndSubscriptions(options =>
        {
            options.AddTopic("topicName");
            options.Credentials = new BasicAWSCredentials("access-key", "secret-key");
        });
}

Check existence of a topic and specify region endpoint

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddTopicAndSubscriptions(options =>
        {
            options.AddTopic("topicName");
            options.RegionEndpoint = RegionEndpoint.EUCentral1;
        });
}

Check existence of a topic and specify credentials with region endpoint

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddTopicAndSubscriptions(options =>
        {
            options.AddTopic("topicName");
            options.Credentials = new BasicAWSCredentials("access-key", "secret-key");
            options.RegionEndpoint = RegionEndpoint.EUCentral1;
        });
}

Check existence of a topic, its subscriptions and loads credentials from the application's default configuration

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddSnsSubscriptions(options =>
        {
             options.AddTopicAndSubscriptions("topicName", ["subscription1-arn", "subscription2-arn"]);
        });
}

Check existence of a topic, its subscriptions and directly pass credentials

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddSnsSubscriptions(options =>
        {
            options.AddTopicAndSubscriptions("topicName", ["subscription1-arn", "subscription2-arn"]);
            options.Credentials = new BasicAWSCredentials("access-key", "secret-key");
        });
}

Check existence of a topic, its subscriptions and specify region endpoint

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddSnsSubscriptions(options =>
        {
            options.AddTopicAndSubscriptions("topicName", ["subscription1-arn", "subscription2-arn"]);
            options.RegionEndpoint = RegionEndpoint.EUCentral1;
        });
}

Check existence of a topic, its subscriptions and specify credentials with region endpoint

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddHealthChecks()
        .AddSnsSubscriptions(options =>
        {
            options.AddTopicAndSubscriptions("topicName", ["subscription1-arn", "subscription2-arn"]);
            options.Credentials = new BasicAWSCredentials("access-key", "secret-key");
            options.RegionEndpoint = RegionEndpoint.EUCentral1;
        });
}