Pulse 워크플로우는 pulse 데이터의 변경에 따라 트리거됩니다. Rootly 플랫폼은 pulse라고 알려진 들어오는 코드 변경 이벤트를 수신할 수 있습니다. 이러한 pulse는 여러 통합(예: Github, Gitlab 등)에서 스트리밍됩니다. 워크플로우의 기능을 활용하여 이러한 pulse로부터 자동으로 사전 인시던트를 선언하고, Slack 알림을 보내는 등의 작업을 수행할 수 있습니다.Pulse 워크플로우는 특히 다음과 같은 경우에 유용합니다…
인시던트 자동 사전 선언 새로운 코드 변경으로 인한 잠재적인 중단에 대비하기 위해
코드 배포 추적 공통 팀 채널에서 (예: #deployments, #infrastructure, #product)
각 pulse에는 일련의 레이블이 있습니다. 레이블은 source에 따라 다릅니다(예: Github의 pulse는 Gitlab의 pulse와 다른 레이블 세트를 가집니다). Pulse 레이블은 값의 배열로 저장됩니다.위의 예시에서 레이블 조건은 pulse에 ref:refs/heads/master 및 action:push labels.각 pulse의 레이블은 pulse 상세 페이지에서 확인할 수 있습니다. Configuration > Pulses > 특정 pulse 선택.
각 pulse에는 payload가 있습니다. Payload도 source에 따라 다릅니다. Pulse payload는 JSON 구조로 저장됩니다. JSONPath 구문을 사용하여 payload 내의 특정 값을 필터링할 수 있습니다. Ruby 정규 표현식(regexp)을 사용하여 JSONPath를 통해 필터링된 값과 일치시킬 수 있습니다.위의 예시에서 payload 조건은 payload의 organization 객체 내의 id 필드가 12345678과 같을 때만 통과됩니다.레이블과 마찬가지로 각 pulse의 payload도 pulse 상세 페이지에서 확인할 수 있습니다. Configuration > Pulses > 특정 pulse 선택.