gpt4 book ai didi

c# - 有没有一种简单的方法可以使用多个 key 检查 Azure Blob 存储的运行状况?

转载 作者:行者123 更新时间:2023-12-02 06:37:29 25 4
gpt4 key购买 nike

我正在使用 ASP.NET Core(C#、.NET 6)构建 Azure Web 服务。我有一个 Azure 存储帐户。存储帐户有两 (2) 个访问 key 。这个想法是,如果第一个 key 过期或需要更改,应用程序可以无缝切换到第二个 key ,同时运算符(operator)更新第一个 key 。

我的应用程序有运行状况检查,我想包括存储帐户的运行状况检查。我从这篇文章中获得灵感:https://learn.microsoft.com/en-us/dotnet/architecture/microservices/implement-resilient-applications/monitor-app-health#healthchecks-implementation-in-eshoponcontainers

我使用 NuGet 包AspNetCore.HealthChecks.AzureStorage编写了这样的代码:

services.AddHealthChecks()
.AddAzureBlobStorage(
$"DefaultEndpointsProtocol=https;AccountName={accountName};AccountKey={key1};EndpointSuffix=core.windows.net",
name: "catalog-storage-check",
tags: new string[] { "catalogstorage" });

问题是,如果 key 1 过期或撤销,此运行状况检查将失败。那不是我想要的。我希望只要2 个 key 中至少有 1 个有效,运行状况检查就能成功;如果两个 key 都失败,运行状况检查就会失败。

有没有简单的方法可以做到这一点,还是我必须自己编写代码?

最佳答案

我查看了 AspNetCore.HealthChecks.AzureStorage 的实现。

https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks/blob/2f582f42a3e5c7dc73bfdb114d6031d711552af6/test/HealthChecks.AzureStorage.Tests/DependencyInjection/AzureBlobStorageRegistrationTests.cs

其实很简单。它只是检查 blob 容器是否存在。

所以我只是使用相同的想法做了我自己的实现,但如果第一个键不起作用则重试。 (如果第一个键失败,我已经有了一种重试操作的通用方法。)

关于c# - 有没有一种简单的方法可以使用多个 key 检查 Azure Blob 存储的运行状况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70879925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com