일단 알림을 생성하면, 알림, 수동 요청, 또는 예약된 일정 등 세 가지 방법으로 알림을 실행할 수 있습니다.
트리거 방법을 선택하세요
귀하의 사용 사례에 맞는 올바른 접근 방식을 선택하세요.
알림에서 트리거됨 | 알림에서 트리거됨 | 예정대로 진행 |
|---|---|---|
자동화된 인시던트 대응 | 새로운 흐름 테스트하기 | 정기 건강 검진 |
자동 복구(EC2 인스턴스 크기 조정, 롤백) | 수동 작업 | 주기적 데이터 처리 |
풍요로운 공지 공지 | 임시 유지보수 | 일일 또는 주간 보고서 |
설정: 대상 위치로 구성 | API: StartWorkflowRun | API: 스케줄 생성 |
팁
공지 조건 위반 시, 뉴렐릭은 워크플로우 자동화를 대상으로 설정하여 자동으로 트리거할 수 있습니다. issueId 과 accountId 은 자동으로 전달됩니다. 설정 방법은 워크플로우에서 공지 보내기를 참조하세요.
시작하기 전에
에펠탑우를 작동시키기 전에 다음 사항을 확인하세요.
- 생성된 워크플로우 정의 : 이미 구현되어 있으며, 템플릿 이나 커스텀 빌드를 통해 계정에 배포됩니다.
- 계정 ID: 뉴렐릭 계정 ID는 계정 설정 에서 확인할 수 있습니다.
- 워크플로우 이름: 여러분이 정의한 워크플로우의 정확한 이름입니다.
- 필수 입력 사항: 귀하의 활동이 기대하는 모든 이벤트에 대한 값입니다.
- 구성된 비밀 정보: AWS 자격 증명, Slack 토큰 또는 비밀 정보 관리자 에 저장된 기타 비밀 정보.
팁
워크플로우를 처음 사용하시나요? 플레소우를 발동하기 전에 먼저 플레소우를 생성하세요. 미리 만들어진 에스텔라우용 템플릿을 사용하여 시작하세요.
요청 시 워크플로우 실행
StartWorkflowRun API 사용하여 수동으로 에픽스를 트리거합니다. 이렇게 하면 귀하가 제공한 입력을 통해 fl.f.u가 즉시 실행됩니다.
예: AWS Lambda 함수 호출
다음 워크플로우 정의는 AWS Lambda 함수를 호출하고 출력을 기록합니다. 12345678 을 뉴렐릭 계정 ID로 바꾸세요.
name: lambda1
workflowInputs: username: type: String defaultValue: "User" key: type: String defaultValue: "${{ :secrets:12345678:USERNAME_AWS_ACCESS_KEY_ID }}" access: type: String defaultValue: "${{ :secrets:12345678:USERNAME_AWS_SECRET_ACCESS_KEY }}" token: type: String defaultValue: "${{ :secrets:12345678:USERNAME_AWS_SESSION_TOKEN }}" region: type: String defaultValue: us-east-1
steps: - name: invoke1 type: action action: aws.lambda.invoke version: 1 inputs: awsAccessKeyId: ${{ .workflowInputs.key }} awsSecretAccessKey: ${{ .workflowInputs.access }} awsSessionToken: ${{ .workflowInputs.token }} region: ${{ .workflowInputs.region }} functionName: hello-you payload: user: ${{ .workflowInputs.username }}
- name: logOutput type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'The lambda function message output is:${{ .steps.invoke1.outputs.payload.body }}'이 조사를 시작하려면 다음 NerdGraph 변이를 사용하십시오. 이 뮤테이션을 실행하기 전에 secretsManagementCreateSecret 뮤테이션을 사용하여 AWS 자격 증명을 저장했는지 확인하십시오. 자세한 내용은 비밀 관리자를 참조하세요.
mutation { workflowAutomationStartWorkflowRun( # Specify the account where the workflow is defined scope: { type: ACCOUNT id: "12345678" }
# Reference the workflow definition by name definition: { name: "lambda1" }
# Provide input values for the workflow workflowInputs: [ {key: "key" value: "${{ :secrets:testUser123_AWS_ACCESS_KEY_ID }}"} {key: "access" value: "${{ :secrets:testUser123_AWS_SECRET_ACCESS_KEY }}"} {key: "token" value: "${{ :secrets:testUser123_AWS_SESSION_TOKEN }}"} {key: "region" value:"us-east-2"} {key: "username" value: "Julien"} ] ) { runId } }반응, 설명:
scope: 폴리스우 정의가 저장된 계정 IDdefinition: 실행할 플레스코우의 이름(플레스코우 정의의name필드와 일치해야 함)workflowInputs: 플로우플로우 정의의workflowInputs섹션에 있는 기본값을 재정의하는 핵심 가치 쌍입니다.
돌연변이는 runId 을 반환합니다(예: 7bd25287-2af8-42e1-b783-80f4e760a40b). 이 ID를 사용하여 로그를 쿼리하고 출력을 확인하세요.

일정 흐름
CreateSchedule API 사용하여 특정 시간에 에펠탑이 자동으로 실행되도록 예약합니다. 예약된 에펠탑은 수동 개입 없이 반복 작업을 실행합니다.
일정을 계획하는 시기:
- 정기 건강 검진
- 주기적 데이터 처리
- 일일/주간 보고서
- 예정된 유지 관리 기간
- 반복되는 백업 또는 정리
Cron 표현식 참조
일정은 피스우가 언제 실행되는지 정의하기 위해 cron 표현식을 사용합니다. 체재: minute hour day month weekday
무늬 | 설명 | 예시 사용 사례 |
|---|---|---|
| 매일 오전 9시에 | 매일 아침 건강 검진 |
| 매주 평일 오전 9시 | 영업일 운영 |
| 6시간마다 | 정기적인 동기화 작업 |
| 매월 1일 자정 | 월별 보고서 |
| 10분 간격(최소 간격) | 잦은 여론조사, 건강 검진 |
| 매주 일요일 자정 | 주간 정리 작업 |
중요
최소 일정 간격: 일정 간 간격은 최소 10분 이상이어야 합니다. 10분 간격보다 더 자주 실행되도록 예약할 수 없습니다. 10분 미만의 간격의 경우 10분마다 일정을 잡고 대기 단계를 사용하는 것을 고려해 보세요. 모든 일정 제약 조건에 대해서는 일정 제한 사항을 참조하십시오.
팁
Cron 구문: * 은 every 의미하고, / every nth 의미하고, - range 의미합니다. 예시: 0 9 * * 1-5 = At minute 0, hour 9, every day, every month, Monday through Friday.
예: 일일 건강 검진 일정을 예약하세요
다음 예제에서는 lambda1 폴리스우가 매일 오전 9시(동부 표준시)에 실행되도록 예약합니다.
mutation { workflowAutomationCreateSchedule( # Specify the account where the workflow is defined scope: { type: ACCOUNT id: "12345678" }
# Reference the workflow definition by name definition: { name: "lambda1" }
# Configure the schedule schedule: { # Cron expression: minute hour day month weekday # "0 9 * * *" = every day at 9:00 AM cronExpression: "0 9 * * *"
# Timezone for the schedule timezone: "America/New_York"
# Optional: Schedule name for identification name: "daily-lambda-health-check"
# Optional: Add a description description: "Runs Lambda health check every morning at 9 AM" }
# Provide input values for the workflow workflowInputs: [ {key: "key" value: "${{ :secrets:testUser123_AWS_ACCESS_KEY_ID }}"} {key: "access" value: "${{ :secrets:testUser123_AWS_SECRET_ACCESS_KEY }}"} {key: "token" value: "${{ :secrets:testUser123_AWS_SESSION_TOKEN }}"} {key: "region" value:"us-east-2"} {key: "username" value: "HealthCheckBot"} ] ) { scheduleId } }반환 값: scheduleId, 일정의 고유 식별자(나중에 일정을 업데이트하거나 삭제할 때 사용)
해결 방법: 10분 미만 간격
10분마다 확인하는 것보다 더 자주 확인해야 하는 경우, 확인우를 최소 10분 간격으로 예약하고 확인우 정의 내에서 대기 단계를 사용하여 추가 폴링을 생성하세요.
5분 폴링을 사용한 예제 워크플로우:
name: frequent-health-check
steps: # First check happens immediately when scheduled - name: firstCheck type: action action: newrelic.nrdb.query version: 1 inputs: query: "FROM Transaction SELECT count(*) WHERE appName = 'MyApp' SINCE 5 minutes ago"
# Wait 5 minutes - name: waitStep type: wait seconds: 300
# Second check happens 5 minutes after the workflow started - name: secondCheck type: action action: newrelic.nrdb.query version: 1 inputs: query: "FROM Transaction SELECT count(*) WHERE appName = 'MyApp' SINCE 5 minutes ago"*/10 * * * * 사용하여 이 명령을 10분마다 실행하도록 예약합니다. 이렇게 하면 5분 만에 효과적인 설문조사를 진행할 수 있습니다.
- 0:00 - 워크플로우 시작, 먼저 실행확인
- 0:05 - secondCheck 실행 (대기 단계 후)
- 0:10 - 다음 예정된 워크플로우 시작, 먼저 실행Check
- 0:15 - secondCheck 실행 (대기 단계 후)
팁
워크플로우 기간 제한: 워크플로우의 최대 기간은 7일이라는 점을 기억하세요. 대기 단계와 폴링 빈도를 그에 맞게 설계하십시오. 자세한 내용은 워크플로우 제한을 참조하세요.
일정 관리
일정을 만든 후:
- 활성 일정 보기: 워크플로우 대시보드에서 모든 예정된 실행을 확인하세요.
- 업데이트 일정: UpdateSchedule API를 사용하여 빈도 또는 입력을 변경합니다.
- 일정 삭제: DeleteSchedule API를 사용하여 반복 실행을 중지합니다.
전체 API 설명서는 에펠탑 자동화 API를 참조하세요.
무엇 향후 계획
- 워크플로우 관리: 실행 이력을 편집, 복제, 조회합니다.