사용자 지정 작업 문제 해결 troubleshoot-a-custom-action

이 페이지에서: 실제 테스트 API 호출을 보내 사용자 지정 작업 구성을 확인한 후 실시간 여정에서 오류를 신뢰하기 전에 오류를 발견할 수 있습니다.

Journey Optimizer 사용자 인터페이스의 관리 섹션에서 API 호출을 전송하여 사용자 지정 작업을 테스트할 수 있습니다. 이 기능은 여정에서 사용자 지정 작업을 사용하기 전이나 후에 문제를 해결하는 데 도움이 됩니다.

관리자는 테스트 요청 보내기 기능을 사용하여 Adobe Journey Optimizer에서 직접 실제 API를 호출하여 사용자 지정 작업 구성의 유효성을 검사합니다. 이 기능을 사용하면 여정에서 사용하기 전에 요청 구조, 헤더, 인증 및 페이로드의 형식이 올바르게 지정됩니다.

{width="70%"}

이 기능을 사용하면 테스트 및 유효성 검사 프로세스를 간소화하여 사용자 지정 작업이 라이브 여정에서 올바르게 작동하도록 할 수 있습니다.

NOTE
조직에서 IP(이그레스) 프록시를 사용하도록 설정한 경우 테스트 요청 보내기 호출이 이를 무시합니다. 프록시 라우팅을 확인하려면 테스트 또는 라이브 여정을 실행하십시오. 외부 시스템과 통합에서 IP(이그레스) 프록시 및 활성화에 대해 자세히 알아보세요.

전제 조건 troubleshoot-custom-action-prereq

테스트 요청 보내기 기능을 사용하려면 사용자 지정 작업​을(를) URL, 헤더 및 인증 설정으로 미리 구성해야 합니다.

관리자가 이 기능을 사용하려면 다음 권한이 필요합니다.

  • 사용자에게 Manage journeys events, data sources and actions 권한이 있어야 합니다.
  • 이 권한은 여정 관리자 역할에 포함되어 있습니다.
  • View journeys events 권한만으로는 충분하지 않습니다.

이 섹션에서 여정 권한에 대해 자세히 알아보세요.

테스트 요청 보내기 기능을 사용하는 방법 troubleshoot-custom-action-use

사용자 지정 작업을 테스트하려면 다음 단계를 수행합니다.

  1. 작업 구성 화면으로 이동하여 사용자 지정 작업을 선택합니다.

  2. 작업 구성 화면 하단의 테스트 요청 보내기 단추를 클릭합니다.
    작업 구성 패널의 테스트 요청 보내기 단추 {width="70%"}

  3. 팝업 창에서 요청 매개 변수를 지정할 수 있습니다.

    • 사용자 지정 작업 메서드가 GET​인 경우 페이로드가 필요하지 않습니다.

    • 사용자 지정 작업 메서드가 POST​인 경우 JSON 페이로드를 제공해야 합니다.

      note
      NOTE
      Adobe Journey Optimizer은 이 JSON의 구조가 잘못된 경우 오류를 발생시키지만 데이터 유형과 불일치하는 경우 오류를 발생시키지 않습니다. 예를 들어 문자열이어야 하는 항목에 정수 매개 변수를 사용하는 경우 오류가 발생하지 않습니다.
    • 인증이 정의된 경우 인증 세부 정보를 입력하라는 메시지가 표시됩니다.

  4. 요청을 실행하려면 보내기​를 클릭하세요.

  5. 헤더 및 상태 코드를 포함한 API의 응답이 인터페이스에 표시됩니다.

인증 처리 troubleshoot-custom-action-auth

사용자 지정 작업에 인증이 포함되어 있는 경우 Adobe Journey Optimizer에서는 사용자가 각 테스트 요청에 대한 인증 세부 정보를 입력해야 합니다.

  • 기본 인증: 사용자가 암호​를 제공해야 합니다.
  • API 키 인증: 사용자가 API 키 값​을(를) 입력해야 합니다.
  • 사용자 지정 인증: 사용자는 요청 bodyParam​에 인증 매개 변수를 제공해야 합니다. 이 경우 인증 요청 및 인증 응답 섹션이 추가됩니다.

주요 이점 troubleshoot-custom-action-benefits

Journey Optimizer 관리자는 외부 도구(예: Postman)를 사용하여 사용자 지정 작업을 테스트할 수도 있습니다. 외부 테스트와 비교하여 제품 내 문제 해결 기능이 제공하는 주요 이점은 다음과 같습니다.

  • 테스트 요청은 AJO 여정​에 의해 실행됩니다. 즉, 다음을 의미합니다.

    • 정확한 요청 구조(Adobe Journey Optimizer 관련 헤더 포함)가 사용됩니다.
    • 소스 IP 및 헤더가 라이브 여정에 사용된 헤더와 일치합니다.
  • 사용자 지정 작업이 이미 배포되었으므로 테스트 요청 보내기 기능을 실시간 여정 문제 해결에 사용할 수 있습니다.

  • 이 제품 내 테스트 기능을 사용하면 도구 간에 구성 세부 정보를 수동으로 복사할 필요가 없으므로 오류 위험이 줄어듭니다.

문제 해결 troubleshoot-custom-action-check

요청이 실패하는 경우 다음을 확인할 수 있습니다.

  • 테스트에 입력한 인증 자격 증명입니다.
  • 요청 메서드(GET 및 POST) 및 해당 페이로드입니다.
  • 사용자 지정 작업에 정의된 API 끝점 및 헤더입니다.
  • 응답 데이터를 사용하여 잠재적인 구성 오류를 식별합니다.

이벤트 삭제 및 유휴 시간 초과 처리 handling-discard-events-and-idle-timeouts

한 여정의 사용자 지정 작업에서 두 번째 여정​을(를) 시작하는 이벤트를 트리거할 때 두 번째 여정이 올바른 상태이고 이벤트가 인식되는지 확인하십시오. 이벤트가 두 번째 여정의 시작 조건을 충족하지 않는 경우 이벤트는 삭제​되고 notSuitableInitialEvent과(와) 같은 코드가 있는 로그에 표시될 수 있습니다. 두 번째 여정이 준비되지 않은 경우 유휴 시간 초과가 발생하여 로그에 이벤트가 삭제될 수 있습니다.

일반적인 원인:

  • 여정 조건을 충족하지 않음 - 두 번째 이벤트가 조건 조건을 가진 규칙 기반 이벤트를 사용합니다. 예를 들어 필수 필드는 비어 있지 않아야 합니다(예: 특정 필드의 isNotEmpty). 이벤트 페이로드가 해당 조건을 만족하지 않는 경우(예: 필드가 비어 있거나 누락된 경우) 이벤트는 수신되지만 삭제됨​이며 두 번째 여정이 트리거되지 않습니다. 이는 예상되는 동작입니다. 설명서 및 로그는 자격 조건이 충족되지 않으면 이벤트가 삭제되고 해당 프로필에 대해 여정이 트리거되지 않음을 확인합니다. 사용자 지정 작업에서 보낸 페이로드에 두 번째 여정의 이벤트 구성에 필요한 모든 필드와 값이 포함되어 있는지 확인합니다. 여정 실행에서 규칙 기반 이벤트를 구성 및 이벤트 수신 문제 해결하는 방법을 알아봅니다.

  • 두 번째 여정이 준비되지 않음 - 두 번째 여정이 아직 활성화되지 않았거나(예: 테스트 모드가 아니거나 라이브가 아님) 사용자 지정 작업 실행과 두 번째 여정을 받을 준비가 된 사이에 시간 간격이 있는 경우 유휴 시간 초과가 발생할 수 있습니다. 사용자 지정 작업이 트리거되기 전에 대상 여정이 게시되었는지 또는 테스트 모드에 있는지 확인하십시오.

  • 삭제 이벤트 진단 - 로그에 삭제 이벤트가 표시되면 여정 로그와 Splunk 추적을 확인하여 이벤트가 수신되었지만 자격(페이로드가 규칙에 맞지 않음) 또는 타이밍으로 인해 삭제되었는지 확인하십시오. 두 번째 여정의 시작 날짜 및 구성이 올바르고 여정이 활성 날짜 창 내에 있는지 확인합니다.

사용자 지정 작업을 통해 여정을 연결할 때 이벤트가 삭제되지 않도록 하려면 두 번째 여정의 이벤트 규칙에 대해 이벤트 페이로드의 유효성을 확인하고 대상 여정이 활성 상태 또는 테스트 중이며 활성 날짜 창 내에 있는지 확인하십시오.

사용자 지정 작업 구성 및 사용에 대한 자세한 내용은 아래 섹션을 참조하십시오.

AI Knowledge Reference

This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.

For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.

  • TL;DR: This page explains how administrators use the Send test request capability to validate custom action configurations by making real API calls directly from Journey Optimizer, before or after using them in a journey.

Intents:

  • Send a real test API call to validate a custom action configuration
  • Provide the correct payload depending on whether the method is GET or POST
  • Enter the authentication details required for each test request
  • Understand the benefits of in-product testing compared to external tools
  • Check what to verify when a test request fails
  • Diagnose discard events and idle timeouts when a custom action in one journey triggers an event meant to start a second journey

Glossary:

  • Send test request: The capability administrators use to validate custom action configurations by making real API calls directly from Adobe Journey Optimizer, checking the request structure, headers, authentication, and payload (product-specific)
  • AJO Journey: The executor of the test request; the exact request structure (including Adobe Journey Optimizer specific headers) is used, and the source IP and headers match those used in live journeys (product-specific)
  • Discard event: An event that is received but discarded when it does not meet the second journey’s entry conditions, appearing in logs with codes such as notSuitableInitialEvent (product-specific)
  • Idle timeout: A timeout that may occur if the second journey is not ready, leading to discard events in the logs (product-specific)
  • IP (egress) proxy: When enabled for your organization, it is bypassed by the Send test request call (product-specific)

Guardrails:

  • If the custom action method is GET, no payload is required; if the method is POST, you must provide a JSON payload.
  • Adobe Journey Optimizer raises an error if the structure of the JSON is incorrect, but not if there is a mismatch with a data type; for instance, no error is raised if an integer parameter is used for what should be a string.
  • The Send test request call bypasses the IP (egress) proxy if your organization has it enabled; to confirm proxy routing, run a test or live journey.
  • For each test request, Adobe Journey Optimizer requires the user to enter authentication details if the custom action includes authentication.
  • For chained journeys, ensure the second journey is published or in test mode before the custom action is triggered, and within its active date window.

Prerequisites and permissions:

  • A custom action pre-configured with a URL, headers, and authentication settings.
  • The Manage journeys events, data sources and actions permission, which is included in the Journey Administrators role; the View journeys events permission alone is not sufficient.

Terminology:

  • Canonical name: Send test request — variants: test request, in-product troubleshooting capability
  • Do not confuse: “Basic Authentication” (the user provides the password) ≠ “API Key Authentication” (the user enters the API key value) ≠ “Custom Authentication” (the user supplies the authentication parameters in the request bodyParam, and the sections Authentication request and Authentication response are added)
  • Do not confuse: “GET” method (no payload required) ≠ “POST” method (JSON payload required)

FAQ:

  • Q: What does the Send test request capability do? — It validates custom action configurations by making real API calls directly from Adobe Journey Optimizer, ensuring the request structure, headers, authentication, and payload are correctly formatted before being used in a journey.
  • Q: What permissions are required? — The Manage journeys events, data sources and actions permission, included in the Journey Administrators role; the View journeys events permission alone is not sufficient.
  • Q: Do I need a payload for the test request? — If the custom action method is GET, no payload is required; if the method is POST, you must provide a JSON payload.
  • Q: Does Journey Optimizer validate the payload data types? — It raises an error if the JSON structure is incorrect, but not if there is a data type mismatch, so an integer used where a string is expected does not raise an error.
  • Q: Can I use this capability for live journeys? — Yes, the Send test request capability can be used for troubleshooting live journeys, as the custom action is already deployed.
  • Q: Why is an event discarded when a custom action triggers a second journey? — If the event does not meet the second journey’s entry conditions, it can be discarded and appear in logs with codes such as notSuitableInitialEvent; idle timeouts may occur if the second journey is not ready, leading to discard events in the logs.

Troubleshooting:

  • A test request fails: check the authentication credentials entered in the test, the request method (GET vs. POST) and corresponding payload, and the API endpoint and headers defined in the custom action; use the response data to identify potential misconfigurations.
  • Event discarded (notSuitableInitialEvent), event qualification not met: the second journey uses a rule-based event with a qualification condition (for example, isNotEmpty on a specific field) and the event payload does not satisfy it, so the event is received but discarded and the second journey is not triggered; the page describes this as expected behavior. Verify that the payload sent by the custom action includes all fields and values required by the second journey’s event configuration.
  • Idle timeout, second journey not ready: the second journey is not yet active (for example, not in test mode or not live), or there is a timing gap between the custom action firing and the second journey being ready to receive. Ensure the target journey is published or in test mode before the custom action is triggered.
  • Discard events in logs: check journey logs and Splunk traces to confirm whether the event was received but discarded due to qualification or timing; ensure the second journey’s start date and configuration are correct and that the journey is within its active date window.

Related pages:

  • Learning what a custom action is: Get started with custom actions (action/action.md)
  • Creating and configuring a custom action: Configure your custom actions (action/about-custom-action-configuration.md)
  • Using custom actions in journeys: Use custom actions (building-journeys/using-custom-actions.md)
  • Passing a collection in custom action parameters: Pass collections into custom action parameters (building-journeys/collections.md)
  • IP (egress) proxy and enablement: Integrate with external systems (configuration/external-systems.md)
  • Configuring rule-based events: Configure rule-based events (event/about-creating.md)
  • Troubleshooting event reception in journey execution: Troubleshoot your live journey execution (building-journeys/troubleshooting-execution.md)
  • Journey permissions: Permission levels (administration/high-low-permissions.md)
recommendation-more-help
journey-optimizer-help