.NET 6 Service Bus 트리거 Azure 기능 - 1부
원하는 대로 다른 바인딩 및 연결 유형을 사용할 수 있지만 최소한 Managed Identity 연결에 관심이 있을 수 있습니다.
전제 조건
Service Bus 네임스페이스 및 주제 만들기
먼저 Service Bus 토픽을 생성해 보겠습니다.
1. 서비스 버스를 만듭니다.
2. 주제 기능을 지원하므로 최소한 표준 계층을 선택하십시오.
3. 주제를 추가합니다. 여기에 몇 가지 옵션이 있지만 지금은 기본 설정을 사용합니다.
4. 모니터링할 Azure Function에 대한 구독을 추가합니다. 지금은 최대 배송 횟수를 "1"로 설정했습니다.
액세스 제어 설정(IAM)
나는 지금 데이터 수신기로 자신을 추가합니다.
1. 주제의 IAM 메뉴로 이동하여 "추가"를 클릭합니다.
2. 역할 할당 추가에서 "Azure Service Bus Data Receiver"를 선택합니다.
3. 계정을 선택하고 구성원에게 할당합니다.
나중에 Azure Function Managed Id에 대해서도 동일한 작업을 수행합니다.
Azure 함수 프로젝트 만들기
이제 Service Bus가 준비되었으므로 Azure Function을 만들어 보겠습니다.
1. Visual Studio 2022에서 새 함수 프로젝트를 만듭니다. .NET 6 및 Service Bus 주제 트리거를 선택합니다. 주제 및 구독 이름을 업데이트합니다.
2. 프로젝트가 생성되면 ConnectionString
속성의 ServiceBusTrigger
인수를 업데이트합니다. "ServiceBusConnection"을 매개변수 이름으로 사용합니다.
[FunctionName("Function1")]
public void Run([ServiceBusTrigger(
"mytopic",
"FunctionSubscription",
Connection = "ServiceBusConnection")]string mySbMsg)
{
_logger.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");
}
3. local.settings.json을 열고 아래와 같이 __fullyQualifiedNamespace를 추가하여 Identity 기반 연결을 활성화합니다. 자세한 내용은 here을 참조하십시오.
호스트 이름을 귀하의 것으로 업데이트하십시오.
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"ServiceBusConnection__fullyQualifiedNamespace": "myservicebusforaf.servicebus.windows.net"
}
}
4. NuGet 관리자를 열고 Microsoft.Azure.WebJobs.Extensions.ServiceBus를 버전 5 이상으로 업데이트합니다. 사용자 Managed Identity 기본 연결에 필요합니다.
디버그
설정을 테스트할 시간입니다.
1. F5를 입력하여 디버깅을 시작합니다. 또한 Run 메서드에 중단점을 배치합니다.
2. Azure Portal에서 "Service Bus Explorer"로 이동하여 테스트 데이터를 보냅니다.
3. 예상대로 중단점에 도달하고 들어오는 데이터가 표시되어야 합니다.
에서 이 함수를 Azure Function에 게시합니다.
Reference
이 문제에 관하여(.NET 6 Service Bus 트리거 Azure 기능 - 1부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/kenakamu/net-6-service-bus-trigger-azure-function-part-1-50h4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
나는 지금 데이터 수신기로 자신을 추가합니다.
1. 주제의 IAM 메뉴로 이동하여 "추가"를 클릭합니다.
2. 역할 할당 추가에서 "Azure Service Bus Data Receiver"를 선택합니다.
3. 계정을 선택하고 구성원에게 할당합니다.
나중에 Azure Function Managed Id에 대해서도 동일한 작업을 수행합니다.
Azure 함수 프로젝트 만들기
이제 Service Bus가 준비되었으므로 Azure Function을 만들어 보겠습니다.
1. Visual Studio 2022에서 새 함수 프로젝트를 만듭니다. .NET 6 및 Service Bus 주제 트리거를 선택합니다. 주제 및 구독 이름을 업데이트합니다.
2. 프로젝트가 생성되면 ConnectionString
속성의 ServiceBusTrigger
인수를 업데이트합니다. "ServiceBusConnection"을 매개변수 이름으로 사용합니다.
[FunctionName("Function1")]
public void Run([ServiceBusTrigger(
"mytopic",
"FunctionSubscription",
Connection = "ServiceBusConnection")]string mySbMsg)
{
_logger.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");
}
3. local.settings.json을 열고 아래와 같이 __fullyQualifiedNamespace를 추가하여 Identity 기반 연결을 활성화합니다. 자세한 내용은 here을 참조하십시오.
호스트 이름을 귀하의 것으로 업데이트하십시오.
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"ServiceBusConnection__fullyQualifiedNamespace": "myservicebusforaf.servicebus.windows.net"
}
}
4. NuGet 관리자를 열고 Microsoft.Azure.WebJobs.Extensions.ServiceBus를 버전 5 이상으로 업데이트합니다. 사용자 Managed Identity 기본 연결에 필요합니다.
디버그
설정을 테스트할 시간입니다.
1. F5를 입력하여 디버깅을 시작합니다. 또한 Run 메서드에 중단점을 배치합니다.
2. Azure Portal에서 "Service Bus Explorer"로 이동하여 테스트 데이터를 보냅니다.
3. 예상대로 중단점에 도달하고 들어오는 데이터가 표시되어야 합니다.
에서 이 함수를 Azure Function에 게시합니다.
Reference
이 문제에 관하여(.NET 6 Service Bus 트리거 Azure 기능 - 1부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/kenakamu/net-6-service-bus-trigger-azure-function-part-1-50h4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
[FunctionName("Function1")]
public void Run([ServiceBusTrigger(
"mytopic",
"FunctionSubscription",
Connection = "ServiceBusConnection")]string mySbMsg)
{
_logger.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");
}
호스트 이름을 귀하의 것으로 업데이트하십시오.
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"ServiceBusConnection__fullyQualifiedNamespace": "myservicebusforaf.servicebus.windows.net"
}
}
4. NuGet 관리자를 열고 Microsoft.Azure.WebJobs.Extensions.ServiceBus를 버전 5 이상으로 업데이트합니다. 사용자 Managed Identity 기본 연결에 필요합니다.
디버그
설정을 테스트할 시간입니다.
1. F5를 입력하여 디버깅을 시작합니다. 또한 Run 메서드에 중단점을 배치합니다.
2. Azure Portal에서 "Service Bus Explorer"로 이동하여 테스트 데이터를 보냅니다.
3. 예상대로 중단점에 도달하고 들어오는 데이터가 표시되어야 합니다.
에서 이 함수를 Azure Function에 게시합니다.
Reference
이 문제에 관하여(.NET 6 Service Bus 트리거 Azure 기능 - 1부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kenakamu/net-6-service-bus-trigger-azure-function-part-1-50h4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)