Azure Portal을 사용하여 단일 테넌트 Azure Logic Apps에서 예제 표준 워크플로 만들기

적용 대상: Azure Logic Apps(표준)

이 방법 가이드에서는 인바운드 웹 요청을 기다렸다가 메일 계정으로 메시지를 보내는 자동화된 워크플로 예제를 만드는 방법을 보여 줍니다. 보다 구체적으로 말하면 단일 테넌트 Azure Logic Apps에서 실행되는 여러 상태 저장 및 상태 비저장 워크플로를 포함할 수 있는 표준 논리 앱 리소스를 만듭니다.

참고 항목

대신 Visual Studio Code에서 이 예제 워크플로를 만들려면 Visual Studio Code를 사용하여 단일 테넌트 Azure Logic Apps에서 표준 워크플로 만들기의 단계를 수행하세요. 두 옵션 모두 동일한 종류의 환경에서 논리 앱 워크플로를 개발, 실행 및 배포하는 기능을 제공합니다. 하지만 Visual Studio Code를 사용하면 개발 환경에서 로컬로 워크플로를 개발, 테스트 및 실행할 수 있습니다.

이 예제 워크플로는 클라우드 기반이며 두 단계로만 구성되어 있지만, 클라우드, 온-프레미스 및 하이브리드 환경에서 다양한 앱, 데이터, 서비스 및 시스템을 연결할 수 있는 수백 개 작업에서 워크플로를 만들 수 있습니다. 예제 워크플로는 요청 기본 제공 트리거로 시작된 후 Office 365 Outlook 작업이 진행됩니다. 트리거는 호출 가능한 워크플로 엔드포인트를 만들고 호출자의 인바운드 HTTPS 요청을 기다립니다. 트리거가 요청을 수신하고 작동하면, 다음 작업이 트리거에서 선택한 출력과 함께 특정 이메일 주소로 이메일을 전송하여 실행됩니다.

Screenshot showing the Azure portal with the designer for Standard logic app workflow.

진행하면서 다음과 같은 상위 수준 작업을 완료하게 됩니다.

  • 표준 논리 앱 리소스를 만들고 빈 상태 저장 워크플로를 추가합니다.
  • 트리거 및 작업을 추가합니다.
  • 워크플로 실행을 트리거합니다.
  • 워크플로의 실행 및 트리거 기록을 봅니다.
  • 배포 후 Application Insights를 사용하도록 설정하거나 엽니다.
  • 상태 비저장 워크플로에 실행 기록을 사용하도록 설정합니다.

단일 테넌트 Azure Logic Apps에서 동일한 논리 앱 리소스와 테넌트에 있는 워크플로는 런타임과 동일한 프로세스에서 실행되므로 같은 리소스를 공유하고 더 나은 성능을 제공합니다. 단일 테넌트 Azure Logic Apps에 대한 자세한 내용은 단일 테넌트 및 다중 테넌트 비교와 통합 서비스 환경을 참조하세요.

필수 조건

  • Azure 계정 및 구독 구독이 없는 경우 Azure 체험 계정에 등록합니다.

  • Azure Storage 계정. 스토리지 계정이 없는 경우, 논리 앱을 만들 때 또는 그 전에 만들 수 있습니다.

    참고 항목

    표준 논리 앱 리소스 종류는 Azure Functions에서 지원하며, 함수 앱과 유사한 스토리지 요구 사항이 있습니다. 상태 저장 워크플로는 큐를 사용하여 워크플로 상태를 예약하고 테이블 및 Blob에 저장하는 등의 스토리지 트랜잭션을 수행합니다. 이러한 트랜잭션은 스토리지 요금을 발생시킵니다. 상태 저장 워크플로가 외부 스토리지에 데이터를 저장하는 방법에 대한 자세한 내용은 상태 저장 및 상태 비저장 워크플로를 참조하세요.

  • 이 가이드와 동일한 예제 워크플로를 만들려면 Microsoft 회사 또는 학교 계정을 사용하여 로그인하는 Office 365 Outlook 이메일 계정이 필요합니다.

    Office 365 계정이 없으면 이메일 계정(예: Outlook.com)에서 메시지를 보낼 수 있는 사용 가능한 모든 다른 메일 커넥터를 사용하면 됩니다. 다른 메일 커넥터를 사용해도 계속 예제를 수행할 수 있으며 일반적인 전체 단계는 동일합니다. 그러나 몇 가지 방식으로 서로 다를 수 있습니다. 예를 들어 Outlook.com 커넥터를 사용하는 경우 개인 Microsoft 계정을 대신 사용하여 로그인합니다.

  • 이 가이드의 예제 워크플로를 테스트하려면 요청 트리거에서 만든 엔드포인트에 호출을 보낼 수 있는 도구가 필요합니다. 해당 도구가 없는 경우 Postman을 다운로드하여 설치하고 사용할 수 있습니다.

  • 논리 앱 리소스를 만들고 Application Insights를 사용하도록 설정하는 경우 필요에 따라 논리 앱에 진단 로깅 및 추적을 사용하도록 설정할 수 있습니다. 논리 앱을 만들 때 또는 배포 후에 설정할 수 있습니다. Application Insights 인스턴스가 필요하지만, 논리 앱을 만들 때 미리 또는 배포 후에 이 리소스를 만들 수 있습니다.

  • App Service Environment v3(ASEv3) - Windows 플랜 전용에 표준 논리 앱 리소스를 배포하려면 먼저 이 환경 리소스를 만들어야 합니다. 그런 다음, 논리 앱 리소스를 만들 때 이 환경을 배포 위치로 선택할 수 있습니다. 자세한 내용은 리소스 종류 및 환경App Service Environment 만들기를 참조하세요.

  • 2022년 10월 중순부터 Azure Portal의 새로운 표준 논리 앱 워크플로는 자동으로 Azure Functions v4를 사용합니다. 2022년 11월 동안 Azure Portal의 기존 표준 워크플로는 자동으로 Azure Functions v4로 마이그레이션됩니다. 표준 논리 앱을 NuGet 기반 프로젝트로 배포하거나 논리 앱을 특정 번들 버전에 고정하지 않는 한 이 업그레이드는 사용자의 작업이 필요하지 않으며 런타임에 영향을 주지 않도록 설계되었습니다. 그러나 예외가 적용되는 경우 또는 Azure Functions v4 지원에 대한 자세한 내용은 이제 Azure Logic Apps Standard에서 Azure Functions v4 지원을 참조하세요.

표준 논리 앱 리소스 만들기

  1. Azure Portal에서 Azure 계정을 사용하여 로그인합니다.

  2. Azure Portal 검색 상자에 논리 앱을 입력하고 논리 앱을 선택합니다.

    Screenshot showing Azure portal search box with logic apps entered and logic apps group selected.

  3. Logic Apps 페이지에서 추가를 선택합니다.

  4. 논리 앱 만들기 페이지의 기본 사항 탭에서 논리 앱에 대한 다음 기본 정보를 제공합니다.

    속성 필요함 Description
    구독 <Azure-subscription-name> Azure 구독 이름.
    리소스 그룹 <Azure-resource-group-name> 논리 앱 및 관련 리소스를 만드는 Azure 리소스 그룹입니다. 해당 이름은 모든 Azure 지역에서 고유해야 하고 문자, 숫자, 하이픈(-), 밑줄(_), 괄호(()), 마침표(.)만 포함할 수 있습니다.

    이 예제에서는 Fabrikam-Workflows-RG라는 리소스 그룹을 만듭니다.
    논리 앱 이름 <logic-app-name> 모든 Azure 지역에서 고유해야 하고 문자, 숫자, 하이픈(-), 밑줄(_), 괄호(()) 및 마침표(.)만 포함할 수 있는 논리 앱 리소스 이름입니다.

    참고: 표준 논리 앱 리소스는 Azure Functions 확장성 모델을 사용하고 Azure Functions 런타임에서 확장으로 호스트되는 단일 테넌트 Azure Logic Apps 런타임을 통해 지원되기 때문에 논리 앱 이름에 자동으로 .azurewebsites.net 접미사가 붙습니다. Azure Functions는 동일한 앱 명명 규칙을 사용합니다.

    이 예제에서는 Fabrikam-Workflows라는 논리 앱을 만듭니다.
  5. 선택을 계속하기 전에 계획 섹션으로 이동합니다. 플랜 유형에서 표준을 선택하여 표준 플랜 기반 논리 앱 유형에 적용되는 설정만 표시되도록 합니다.

    플랜 유형 속성은 논리 앱에 사용할 호스팅 계획 및 청구 모델을 지정합니다. 자세한 내용은 호스팅 계획과 가격 책정 계층을 참조하세요.

    플랜 유형 설명
    Standard 이 논리 앱 유형은 기본 선택 영역입니다. 워크플로는 단일 테넌트 Azure Logic Apps에서 실행되며 표준 청구 모델을 사용합니다.
    소비 이 논리 앱 유형 및 워크플로는 전역 다중 테넌트 Azure Logic Apps에서 실행되며 사용량 청구 모델을 사용합니다.
    속성 필요함 설명
    Windows 플랜 <plan-name> 사용할 계획 이름입니다. 기존 계획 이름을 선택하거나 새 계획의 이름을 입력합니다.

    이 예에서는 My-App-Service-Plan 이름을 사용합니다

    참고: Windows 기반 App Service 플랜만 지원됩니다. Linux 기반 App Service 플랜은 사용하지 마세요.
    요금제 <pricing-tier> 논리 앱 및 워크플로에 사용할 가격 책정 계층입니다. 선택한 내용에 따라 논리 앱과 워크플로에서 사용하는 가격 책정, 컴퓨팅, 메모리 및 스토리지에 영향이 있습니다.

    자세한 내용은 호스팅 계획과 가격 책정 계층을 참조하세요.
  6. 이제 다음을 계속 선택합니다.

    속성 필요함 설명
    게시 Workflow 이 옵션은 플랜 유형표준 논리 앱 유형으로 설정된 경우에만 나타나고 적용됩니다. 기본적으로 이 옵션은 워크플로로 설정되어 있으며 첫 번째 워크플로가 추가되는 빈 논리 앱 리소스를 만듭니다.

    참고: 현재 Docker 컨테이너 옵션을 사용하려면 Azure Arc 지원 Kubernetes 클러스터에서 사용자 지정 위치가 필요하며 Azure Arc 지원 Logic Apps(표준)와 함께 사용할 수 있습니다. 논리 앱, 사용자 지정 위치 및 클러스터의 리소스 위치는 모두 동일해야 합니다.
    지역 <Azure-region> 앱 정보를 저장하는 데 사용할 Azure 데이터 센터 지역입니다. 이 예제에서는 Azure 미국 서부 지역에 샘플 논리 앱을 배포합니다.

    - 이전에 Docker 컨테이너를 선택한 경우 지역 목록에서 사용자 지정 위치를 선택합니다.

    - 기존 App Service Environment v3 리소스에 앱을 배포하려는 경우 지역 목록에서 해당 환경을 선택할 수 있습니다.

    참고 항목

    가용성 영역 중복을 지원하는 Azure 지역을 선택하면 영역 중복 섹션이 사용하도록 설정됩니다. 이 섹션에서는 논리 앱에 대해 가용성 영역 중복성을 사용하도록 설정하는 선택 사항을 제공합니다. 그러나 현재 지원되는 Azure 지역에는 미국 서부가 포함되어 있지 않으므로 이 예에서는 이 섹션을 무시해도 됩니다. 자세한 내용은 영역 중복 및 가용성 영역을 사용하여 지역 오류로부터 논리 앱 보호를 참조하세요.

    완료되면 설정이 다음 예제와 유사하게 표시됩니다.

    Screenshot showing Azure portal and page named Create Logic App.

  7. 호스팅 탭에서 논리 앱에 사용할 수 있도록 스토리지 솔루션 및 호스팅 계획에 관한 다음 정보를 제공합니다.

    속성 필요함 설명
    스토리지 유형 - Azure Storage
    - SQL 및 Azure Storage
    워크플로 관련 아티팩트 및 데이터에 사용할 스토리지 유형입니다.

    - Azure에만 배포하려면 Azure Storage를 선택합니다.

    - SQL을 기본 스토리지로 사용하고 Azure Storage를 보조 스토리지로 사용하려면 SQL 및 Azure Storage를 선택하고 단일 테넌트 Azure Logic Apps에서 표준 논리 앱의 SQL 데이터베이스 스토리지 설정을 검토합니다.

    참고: Azure 지역에 배포하는 경우에도 Azure Storage 계정이 필요합니다. 이 계정은 Azure Logic Apps 플랫폼에서 논리 앱 구성의 일회성 호스팅을 완료하는 데 사용됩니다. 워크플로의 상태, 실행 기록 및 기타 런타임 아티팩트가 SQL 데이터베이스에 저장됩니다.

    Azure Arc 클러스터에서 호스팅되는 사용자 지정 위치에 배포하는 경우 스토리지 공급자로 SQL만 있으면 됩니다.
    스토리지 계정 <Azure-storage-account-name> 스토리지 트랜잭션에 사용할 Azure Storage 계정입니다.

    이 리소스 이름은 모든 지역에서 고유해야 하며 숫자와 소문자만 포함된 3-24자여야 합니다. 기존 계정을 선택하거나 새 계정을 만듭니다.

    이 예제에서는 mystorageacct라는 스토리지 계정을 만듭니다.
  8. 네트워킹 탭에서 이 예제의 기본 옵션을 그대로 둘 수 있습니다.

    구체적인 실제 시나리오에서는 적절한 옵션을 검토하고 선택해야 합니다. 논리 앱 리소스를 배포한 후 이 구성을 변경할 수도 있습니다. 자세한 내용은 프라이빗 엔드포인트를 사용하여 표준 논리 앱과 Azure 가상 네트워크 간의 트래픽 보호를 참조하세요.

    공용 액세스 사용 동작
    설정 논리 앱에 인터넷에 열려 있고 Azure 가상 네트워크에 액세스할 수 없는 인바운드 주소의 퍼블릭 엔드포인트가 있습니다.
    해제 논리 앱에 퍼블릭 엔드포인트가 없지만 대신 Azure 가상 네트워크 내에서 통신하기 위한 프라이빗 엔드포인트가 있으며 해당 가상 네트워크로 격리됩니다. 프라이빗 엔드포인트는 가상 네트워크의 엔드포인트와 통신할 수 있지만 해당 네트워크 내의 클라이언트에서만 통신할 수 있습니다. 또한 이 구성은 논리 앱 트래픽이 네트워크 보안 그룹에 의해 제어되거나 가상 네트워크 경로의 영향을 받을 수 있음을 의미합니다.

    논리 앱이 가상 네트워크의 엔드포인트에 액세스할 수 있도록 하려면 적절한 옵션을 선택해야 합니다.

    네트워크 삽입 사용 동작
    설정 논리 앱 워크플로는 가상 네트워크의 엔드포인트와 비공개로 안전하게 통신할 수 있습니다.
    해제 논리 앱 워크플로는 가상 네트워크의 엔드포인트와 통신할 수 없습니다.
  9. 만들기 및 배포 설정에서 Application Insights 사용을 지원하는 경우 필요에 따라 논리 앱 워크플로에 진단 로깅 및 추적을 사용하도록 설정할 수 있습니다.

    1. 모니터링 탭의 Application Insights에서 Application Insights 사용로 설정합니다(아직 설정하지 않은 경우).

    2. Application Insights 설정에서 기존 Application Insights 인스턴스를 선택하거나, 새 인스턴스를 만들려는 경우 새로 만들기를 선택하고 사용할 이름을 입력합니다.

  10. Azure가 논리 앱 설정의 유효성을 검사한 후 검토 + 만들기 탭에서 만들기를 선택합니다. 예를 들면 다음과 같습니다.

    Screenshot showing Azure portal and new logic app resource settings.

    참고 항목

    이 단계 중에 유효성 검사 오류가 발생하는 경우 오류 정보를 열고 검토합니다. 예를 들어 선택한 지역이 만들려는 리소스의 할당량에 도달하는 경우 다른 지역을 시도해야 할 수도 있습니다.

    Azure에서 배포를 완료하면 논리 앱 리소스가 자동으로 활성화되지만, 리소스가 비어 있고 아직 워크플로를 추가하지 않았기 때문에 아직 아무런 작업도 수행하지 않습니다.

  11. 빈 워크플로를 추가할 수 있도록 배포 완료 페이지에서 리소스로 이동을 선택합니다.

    Screenshot showing Azure portal and finished deployment.

빈 워크플로 추가

빈 논리 앱 리소스를 만든 후 첫 번째 워크플로를 추가해야 합니다.

  1. Azure가 리소스를 연 후, 논리 앱의 리소스 메뉴에서 워크플로를 선택합니다. 워크플로 도구 모음에서 추가를 선택합니다.

    Screenshot showing logic app resource menu with Workflows selected, and on the toolbar, Add is selected.

  2. 새 워크플로 창이 열리면 워크플로의 이름을 입력하고, 상태 저장 또는 상태 비저장 중에서 상태 유형을 선택합니다. 완료되면 만들기를 선택합니다.

    이 예제에서는 Stateful-Workflow라는 빈 상태 저장 워크플로를 추가합니다. 기본적으로 워크플로는 사용하도록 설정되지만 사용자가 트리거 및 작업을 추가하기 전에는 아무 것도 수행하지 않습니다.

    Screenshot showing new blank stateful workflow named Stateful-Workflow.

  3. 워크플로 목록에서 빈 상태 저장 워크플로를 선택합니다.

  4. 워크플로 메뉴의 개발자에서 디자이너를 선택합니다.

    디자이너 화면에 트리거 작업을 선택하라는 프롬프트가 표시됩니다. 기본적으로 사용 가능한 트리거가 있는 창이 이미 열려 있는 것처럼 보이도록 프롬프트가 이미 선택되어 있습니다.

이제 워크플로를 시작하는 트리거를 추가합니다.

트리거 추가

이 예제 워크플로는 HTTP 요청을 받을 때라는 기본 제공 요청 트리거로 시작합니다. 이 트리거는 다른 서비스 또는 논리 앱 워크플로가 호출할 수 있는 엔드포인트를 만들고 해당 인바운드 호출 또는 요청이 도착할 때까지 기다립니다. 기본 제공 작업은 기본적으로 Azure Logic Apps 런타임 내에서 직접 실행됩니다.

  1. 워크플로 디자이너에서 빈 워크플로가 열려 있고 디자이너 화면에서 트리거 추가 프롬프트가 선택되어 있는지 확인합니다.

  2. request를 검색어로 사용하여 다음 단계에 따라 HTTP 요청을 받을 때라는 기본 제공 Request 트리거를 워크플로에 추가합니다.

    트리거가 디자이너에 표시되면 트리거의 정보 창이 열리고 트리거의 속성, 설정 및 기타 작업이 표시됩니다.

    Screenshot showing the workflow designer and trigger information pane.

  3. 워크플로를 저장합니다. 디자이너 도구 모음에서 저장을 선택합니다.

    워크플로가 요청 트리거로 시작하는 경우 해당 워크플로를 처음 저장할 때 Azure Logic Apps는 요청 트리거에서 만든 엔드포인트의 URL을 자동으로 생성합니다. 나중에 워크플로를 테스트할 때 이 URL로 요청을 보냅니다. 그러면 트리거가 실행되고 워크플로가 실행되기 시작합니다.

작업 추가

이 예제 워크플로는 전자 메일 보내기라는 Office 365 Outlook 관리 커넥터 작업으로 계속됩니다. 관리형 커넥터 작업은 Azure에서 실행되고 Azure Logic Apps 런타임에서는 기본적으로 직접 실행됩니다.

  1. 디자이너에서 추가한 트리거 아래에 있는 더하기 기호(+)>동작 추가를 선택합니다.

    다음 작업을 선택할 수 있도록 작업 추가 창이 열립니다.

  2. Office 전자 메일 보내기를 검색어로 사용하여 다음 단계에 따라 전자 메일 보내기(V2)라는 Office 365 Outlook 작업을 워크플로에 추가합니다.

  3. 작업 정보 창의 연결 만들기 탭에서 로그인을 선택합니다. 그러면 이메일 계정에 연결할 수 있습니다.

    Screenshot showing the designer, the pane named Send an email (V2) with Sign in button.

  4. 이메일 계정에 액세스할지를 묻는 메시지가 표시되면 계정 자격 증명을 사용하여 로그인합니다.

    참고 항목

    오류 메시지 "오류로 인해 실패: '브라우저가 닫혔습니다.' 다시 로그인하세요."가 표시되면, 브라우저에서 타사 쿠키를 차단하는지 확인합니다. 쿠키가 차단된 경우 쿠키를 사용할 수 있는 사이트 목록에 https://portal.azure.com을 추가해 봅니다. 시크릿 모드를 사용하는 경우 이 모드에서 작업하는 동안 타사 쿠키가 차단되지 않도록 합니다.

    필요한 경우 페이지를 다시 로드하고, 워크플로를 열고, 이메일 작업을 다시 추가하고, 연결을 시도합니다.

    Azure가 연결에 성공하면 이메일 보내기 작업이 디자이너에 표시되고 기본적으로 선택됩니다. 이 작업이 선택되지 않으면 이 작업을 선택하여 정보 창도 엽니다.

  5. 작업 정보 창의 매개 변수 탭에서 작업에 필요한 정보를 입력합니다. 예를 들면 다음과 같습니다.

    Screenshot that shows the designer and the

    속성 필요함 설명
    받는 사람 <your-email-address> 이메일을 받는 사람. 테스트 목적의 이메일 주소를 사용할 수 있습니다. 이 예제에서는 가상의 이메일 주소 sophiaowen@fabrikam.com을 사용합니다.
    주제 예제 워크플로의 메일 이메일 제목
    본문 예제 워크플로의 Hello! 이메일 본문 내용

    참고 항목

    설정, 정적 결과 또는 다음 시간 이후에 실행의 정보 창에서 변경 작업을 수행한 경우 탭을 전환하거나 포커스를 디자이너로 이동하기 전에 완료를 선택하여 변경 내용을 커밋해야 합니다. 그렇지 않으면 디자이너가 변경 내용을 유지하지 않습니다.

  6. 워크플로를 저장합니다. 디자이너 도구 모음에서 저장을 선택합니다.

  7. 현재 환경에 트래픽을 제한하는 엄격한 네트워크 요구 사항 또는 방화벽이 있는 경우 정규화된 도메인 이름을 찾으려면 워크플로에 있는 트리거 또는 작업 연결에 대한 정규화된 도메인 이름을 검색하려면 방화벽 액세스용 도메인 이름 찾기를 확인하세요.

    그렇지 않고 워크플로를 테스트하려면 실행을 수동으로 트리거합니다.

디자이너에서 항목 삭제

디자이너에서 워크플로의 항목을 삭제하려면 다음 단계 중 하나를 수행합니다:

  • 항목을 선택하고 항목의 바로 가기 메뉴(Shift+F10)를 열고 삭제를 선택합니다. 확인하려면 확인을 선택합니다.

  • 항목을 선택하고 삭제 키를 누릅니다. 확인하려면 확인을 선택합니다.

  • 항목을 선택하면 해당 항목에 대한 정보 창이 열립니다. 이 창의 오른쪽 위 모서리에서 줄임표(...) 메뉴를 열고 삭제를 선택합니다. 확인하려면 확인을 선택합니다.

    Screenshot that shows a selected item on designer with the opened information pane plus the selected ellipses button and

    줄임표 메뉴가 표시되지 않는 경우 정보 창의 오른쪽 위 모서리에 줄임표(...) 단추가 표시되도록 브라우저 창을 충분히 넓게 확장합니다.

방화벽 액세스를 위한 도메인 이름 찾기

Azure Portal에서 논리 앱을 배포하고 워크플로를 실행하기 전에, 현재 환경에 트래픽을 제한하는 엄격한 네트워크 요구 사항 또는 방화벽이 있는 경우 논리 앱에 있는 트리거 또는 작업 연결에 대한 네트워크 또는 방화벽 권한을 워크플로에서 설정해야 합니다.

논리 앱 및 워크플로에서 사용하는 인바운드 및 아웃바운드 IP 주소를 찾으려면 다음 단계를 수행합니다.

  1. 논리 앱 메뉴의 설정에서 네트워킹(미리 보기)을 선택합니다.

  2. 네트워킹 창에서 인바운드 트래픽아웃바운드 트래픽 섹션을 찾아 검토합니다.

연결에 대한 FQDN(정규화된 도메인 이름)을 찾으려면 다음 단계를 수행합니다.

  1. 논리 앱 메뉴의 워크플로에서 연결을 선택합니다. API 연결 탭에서 연결의 리소스 이름을 선택합니다. 예를 들면 다음과 같습니다.

    Screenshot that shows the Azure portal and logic app menu with the

  2. 브라우저의 오른쪽 위 모서리에 JSON 보기가 표시되도록 브라우저 너비를 충분히 확장하고 JSON 보기를 선택합니다.

    Screenshot that shows the Azure portal and API Connection pane with

  3. 방화벽을 설정할 때 이 정보를 사용할 수 있도록 connectionRuntimeUrl 속성 값을 복사하고 안전한 위치에 저장합니다.

    Screenshot showing the selected property value named connectionRuntimeUrl.

  4. 각 연결에 대해 관련 단계를 반복합니다.

워크플로 트리거

이 예제의 워크플로는 요청 트리거가 인바운드 요청을 수신할 때 실행되고, 인바운드 요청은 트리거에서 만든 엔드포인트의 URL로 전송됩니다. 워크플로를 처음 저장할 때 Azure Logic Apps에서 이 URL을 자동으로 생성했습니다. 따라서 이 요청을 보내서 워크플로를 트리거하려면 먼저 이 URL을 찾아야 합니다.

  1. 워크플로 디자이너에서 HTTP 요청을 수신하는 경우 요청 트리거를 선택합니다.

  2. 정보 창이 열리면 매개 변수 탭에서 HTTP POST URL 속성을 찾습니다. 생성된 URL을 복사하려면 Rrl 복사(파일 복사 아이콘)를 선택하고, 지금은 다른 위치에 URL을 저장합니다. URL은 다음 형식을 따릅니다.

    https://<*logic-app-name*>.azurewebsites.net:443/api/<*workflow-name*>/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<*shared-access-signature*>

    Screenshot that shows the designer with the Request trigger and endpoint URL in the

    이 예제의 URL은 다음과 같습니다.

    https://fabrikam-workflows.azurewebsites.net:443/api/Fabrikam-Stateful-Workflow/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=xxxxxXXXXxxxxxXXXXxxxXXXXxxxxXXXX

    워크플로 URL 속성의 논리 앱 개요 창에서 엔드포인트 URL을 찾는 방법도 있습니다.

    1. 리소스 메뉴에서 개요를 선택합니다.
    2. 개요 창에서 워크플로 URL 속성을 찾습니다.
    3. 엔드포인트 URL을 복사하려면 엔드포인트 URL 텍스트의 끝으로 포인터를 이동하고 클립보드로 복사(파일 복사 아이콘)를 선택합니다.
  3. 요청을 전송하여 URL을 테스트하려면 요청을 만들고 보낼 수 있는 Postman 또는 선호하는 도구를 엽니다.

    이 예제에서는 Postman을 사용합니다. 자세한 내용은 Postman 시작을 참조하세요.

    1. Postman 도구 모음에서 새로 만들기를 선택합니다.

      Screenshot that shows Postman with New button selected

    2. 새로 만들기 창의 구성 요소에서 요청을 선택합니다.

    3. 요청 저장 창의 요청 이름에서 요청의 이름을 입력합니다(예: Test workflow trigger).

    4. 저장할 컬렉션 또는 폴더 선택에서 컬렉션 만들기를 선택합니다.

    5. 모든 컬렉션에서 요청을 구성하기 위해 만들 컬렉션의 이름을 입력하고 Enter 키를 누른 다음, <collection-name>에 저장을 선택합니다. 이 예제에서는 Logic Apps 요청을 컬렉션 이름으로 사용합니다.

      Postman에서 요청 트리거의 엔드포인트 URL에 요청을 보낼 수 있도록 요청 창이 열립니다.

      Screenshot that shows Postman with the opened request pane

    6. 요청 창의 메서드 목록 옆에 있는 주소 상자를 보면 현재 기본 요청 메서드가 GET으로 표시됩니다. 앞에서 복사한 URL을 이 주소 상자에 붙여넣고 보내기를 선택합니다.

      Screenshot that shows Postman and endpoint URL in the address box with Send button selected

      트리거가 실행되면 이 예제 워크플로가 실행되고 다음과 비슷한 이메일을 보냅니다.

      Screenshot that shows Outlook email as described in the example

모범 사례 및 추천 사항

최적의 디자이너 응답성과 성능을 위해 다음 지침을 검토하고 따릅니다.

  • 워크플로당 50개 이하의 작업을 사용합니다. 이 작업 수를 초과하면 디자이너 성능이 느려질 가능성이 높아집니다.

  • 필요한 경우 비즈니스 논리를 여러 워크플로로 분할하는 것을 고려합니다.

  • 논리 앱 리소스당 워크플로가 10~15개 이하입니다.

워크플로 실행 기록 검토

상태 저장 워크플로 실행이 완료되면 전체 실행, 트리거 및 각 작업의 상태를 입력 및 출력과 함께 포함하여 워크플로의 실행 기록을 볼 수 있습니다. Azure Portal에서 워크플로 실행 기록 및 트리거 기록은 논리 앱 리소스 수준이 아닌 워크플로 수준에 표시됩니다. 자세한 내용은 워크플로 실행 기록 검토트리거 기록 검토를 참조하세요.

이 예제 워크플로의 경우 워크플로 실행 기록은 다음 샘플과 유사합니다.

Screenshot shows run details view with the status for each step in the workflow.

Screenshot shows inputs and outputs in the selected action named Send an email.

트리거 기록 검토

상태 저장 워크플로의 경우 실행 기록 컨텍스트와 별도로 입력 및 출력과 함께 트리거 상태를 포함하여 각 실행의 트리거 기록을 검토할 수 있습니다. Azure Portal에서 트리거 기록 및 실행 기록은 논리 앱 수준이 아닌 워크플로 수준에서 표시됩니다. 자세한 내용은 트리거 기록 검토를 참조하세요.

동일한 입력을 사용하여 워크플로 실행 다시 제출

기존 상태 저장 워크플로 실행의 경우 이전에 해당 실행에 사용된 것과 동일한 입력으로 전체 워크플로를 다시 실행할 수 있습니다. 자세한 내용은 동일한 입력으로 워크플로 다시 실행을 참조하세요.

상태 비저장 워크플로에 대한 실행 기록 사용 설정

상태 비저장 워크플로를 보다 쉽게 디버그하려면 해당 워크플로에 실행 기록을 사용하도록 설정한 다음, 완료되면 실행 기록을 사용하지 않도록 설정하면 됩니다. Azure Portal에서 다음 단계를 수행하거나, Visual Studio Code를 사용하는 경우 Visual Studio Code에서 상태 저장 및 상태 비저장 워크플로 만들기를 참조하세요.

  1. Azure Portal에서 표준 논리 앱 리소스를 엽니다.

  2. 논리 앱 메뉴의 설정에서 구성을 선택합니다.

  3. 애플리케이션 설정 탭에서 새 애플리케이션 설정을 선택합니다.

  4. 애플리케이션 설정 추가/편집 창의 이름 상자에 다음 작업 옵션 이름을 입력합니다.

    Workflows.{yourWorkflowName}.OperationOptions

  5. 상자에 WithStatelessRunHistory 값을 입력합니다.

    Screenshot showing Standard logic app and pane named Add/Edit application setting with Workflows.{yourWorkflowName}.OperationOptions set to WithStatelessRunHistory.

  6. 작업을 마치려면 확인을 선택합니다. 구성 창 도구 모음에서 저장을 선택합니다.

  7. 작업을 마친 후 실행 기록을 사용하지 않도록 설정하려면 Workflows.{your-workflow-name}.OperationOptions 속성을 None으로 설정하거나 이 속성 및 해당 값을 모두 삭제합니다.

배포 후 Application Insights를 사용하도록 설정하거나 열기

워크플로가 실행되는 동안 논리 앱은 다른 이벤트와 함께 원격 분석 데이터를 내보냅니다. 이 원격 분석 데이터를 사용하여 워크플로가 얼마나 잘 실행되는지 그리고 Logic Apps 런타임이 얼마나 다양한 방식으로 작동하는지 보다 정확하게 파악할 수 있습니다. 거의 실시간 원격 분석 데이터(라이브 메트릭)를 제공하는 Application Insights를 사용하여 워크플로를 모니터링할 수 있습니다. 이 데이터를 사용하여 문제를 진단하고 경고를 설정하고 차트를 작성할 때 이 기능을 통해 오류 및 성능 문제를 보다 쉽게 조사할 수 있습니다.

논리 앱의 만들기 및 배포 설정에서 Application Insights 사용을 지원하는 경우 필요에 따라 논리 앱 워크플로에 진단 로깅 및 추적을 사용하도록 설정할 수 있습니다. Azure Portal에서 논리 앱 리소스를 만들 때 또는 배포 후에 설정할 수 있습니다. Application Insights 인스턴스가 필요하지만, 논리 앱을 만들 때 미리 또는 배포 후에 이 리소스를 만들 수 있습니다. 선택적으로 표준 워크플로에 대해 Application Insights에서 향상된 원격 분석을 사용하도록 설정할 수 있습니다.

배포된 논리 앱에서 Application Insights 사용하도록 설정

  1. Azure Portal에서 배포된 논리 앱을 찾습니다.

  2. 논리 앱 메뉴의 설정에서 Application Insights를 선택합니다.

  3. Application Insights 창에서 Application Insights 켜기를 선택합니다.

  4. 창이 업데이트되면 아래쪽에서 적용>를 선택합니다.

  5. Application Insights 창에서 Application Insights 데이터 보기를 선택합니다.

    Application Insights 대시보드가 열리면 논리 앱 워크플로에 대한 메트릭 또는 로그를 검토할 수 있습니다. 예를 들어 데이터를 차트로 작성하거나 쿼리하려면 Application Insights 리소스 메뉴의 모니터링아래에서 메트릭 또는 로그를 선택합니다.

Application Insights 열기

  1. Azure Portal에서 배포된 논리 앱을 찾습니다.

  2. 논리 앱 메뉴의 설정에서 Application Insights를 선택합니다.

  3. Application Insights 창에서 Application Insights 데이터 보기를 선택합니다.

    Application Insights 대시보드가 열리면 논리 앱 워크플로에 대한 메트릭 또는 로그를 검토할 수 있습니다. 예를 들어 데이터를 차트로 작성하거나 쿼리하려면 Application Insights 리소스 메뉴의 모니터링아래에서 메트릭 또는 로그를 선택합니다.

연결 보기

Microsoft에서 관리하는 커넥터를 사용하여 워크플로에서 연결을 만들 때 이러한 연결은 실제로 자체 리소스 정의가 있는 별도의 Azure 리소스이며 전역 다중 테넌트 Azure에서 호스트됩니다. 표준 논리 앱 워크플로는 기본적으로 실행되고 단일 테넌트 Azure Logic Apps 런타임에 의해 구동되는 기본 제공 서비스 공급자 커넥터를 사용할 수도 있습니다. 이러한 연결을 보고 관리하려면 연결 보기를 참조하세요.

논리 앱 리소스 중지 또는 시작

논리 앱 사용 안 함 또는 사용하도록 설정의 단계를 따릅니다.

문제 및 오류 해결

이전에 만든 워크플로의 디자이너 선택기에 새 트리거 및 작업이 없음

단일 테넌트 Azure Logic Apps는 Azure Function 작업, Liquid 작업 및 XML 작업(예: XML 유효성 검사XML 변환)의 기본 제공 작업을 지원합니다. 그러나 이전에 만든 논리 앱의 경우 논리 앱에서 오래된 버전의 확장 번들 Microsoft.Azure.Functions.ExtensionBundle.Workflows를 사용하기 때문에 이러한 작업이 디자이너에 표시되지 않을 수 있습니다.

이 문제를 해결하려면 확장 번들을 최신 버전으로 자동 업데이트하도록 다음 단계에 따라 오래된 버전을 삭제합니다.

참고 항목

이 솔루션은 Azure Portal을 사용하여 만드는 표준 논리 앱 리소스에만 적용되고, Visual Studio Code 및 Azure Logic Apps(표준) 확장을 사용하여 만들고 배포하는 논리 앱에는 적용되지 않습니다. 지원되는 트리거 및 작업이 Visual Studio Code 디자이너에 없음을 참조하세요.

  1. Azure Portal에서 논리 앱을 중지합니다.

    1. 논리 앱 메뉴에서 개요를 선택합니다.

    2. 개요 창의 도구 모음에서 중지를 선택합니다.

  2. 논리 앱 메뉴의 개발 도구에서 고급 도구를 선택합니다.

  3. 고급 도구 창에서 Go를 선택합니다. 그러면 논리 앱에 대한 Kudu 환경이 열립니다.

  4. Kudu 도구 모음에서 디버그 콘솔 메뉴를 열고 CMD를 선택합니다.

    명령 프롬프트를 사용하여 번들 폴더로 이동할 수 있도록 콘솔 창이 열립니다. 또는 콘솔 창 위에 표시된 디렉터리 구조를 찾아볼 수도 있습니다.

  5. 기존 번들의 버전 폴더가 들어 있는 다음 폴더로 이동합니다.

    ...\home\data\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows

  6. 기존 번들의 버전 폴더를 삭제합니다. 콘솔 창에서 다음 명령을 실행하고 {bundle-version}을 기존 버전으로 바꿉니다.

    rm -rf {bundle-version}

    예: rm -rf 1.1.3

    "권한이 거부됨" 또는 "사용 중인 파일"과 같은 오류가 발생하는 경우 브라우저에서 페이지를 새로 고치고, 폴더가 삭제될 때까지 이전 단계를 다시 시도합니다.

  7. Azure Portal에서 논리 앱의 개요 페이지로 돌아가서 다시 시작을 선택합니다.

    포털이 자동으로 최신 번들을 가져와서 사용합니다.

다음 단계