Microsoft Flow를 사용하여 상태 보고서를 Teams에 기록

소개



이 플로우는 PREMIUM 커넥터인 "HTTP"액션을 사용하므로 실행 사용자에게 유료 Flow per user 플랜에 대한 라이센스가 필요합니다.

완성 이미지



상태 보고서에 게재된 내용을 자동으로 Teams에 씁니다.


Microsoft 365 관리 센터의 상태 보고서 화면에 표시된 내용과 동일합니다. API로 취득한 데이터를 필터링함으로써, 상태 리포트와 같은 건수・동일한 내용이 되도록 하고 있습니다.



구현



Microsoft Flow에서 흐름을 만듭니다.
전체 흐름의 흐름은 다음과 같습니다.



흐름 개시 ~ 장애 정보 취득까지



여기까지의 설정에 대해서는, 이하의 기사를 매우 알기 쉽습니다.
이 게시물에서는 할애합니다.
  • [Microsoft Flow] 흐름을 사용하여 Office 365 서비스 상태 모니터링



  • 장애정보 중 '복구됨', '사후보고' 또는 '오검지'인 것을 제외



    관리 센터에 표시되는 보고서에 맞게 필터링합니다.


    @not(or(equals(item()?['Status'], 'Service restored'), equals(item()?['Status'], 'Post-incident report published'), equals(item()?['Status'], 'False positive')))
    

    오류 정보를 HTML 형식의 테이블로 변환



    표로 합니다.
    「발생 일시」와 「최종 일시」는 UTC에서 일본 시간으로 변환합니다.



    발생 일시
    formatDateTime(convertTimeZone(item()?['StartTime'], 'UTC', 'Tokyo Standard Time'), 'yyyy/MM/dd HH:mm')
    

    최종 갱신 일시
    formatDateTime(convertTimeZone(item()?['LastUpdatedTime'], 'UTC', 'Tokyo Standard Time'), 'yyyy/MM/dd HH:mm')
    

    Teams에 게시하기 위해 스타일 조정



    작성한 표를 쉽게 볼 수 있도록 스타일을 조정합니다.
    Teams에서는 Style 태그를 사용할 수 없으므로 TH 또는 TD를 인라인 스타일 태그로 바꿉니다.



    표 테두리를 표시하기 위해 스타일 변경
    replace(body('障害情報をHTML形式の表に変換する'),'<table>','<table border="3" bgcolor="87ceeb">')
    

    표의 열 이름을 줄 바꿈 금지로 만들기 위해 스타일 변경
    replace(outputs('表の罫線を表示するためにスタイルを変更する'),'<th>','<th style="white-space:nowrap;padding:7px">')
    

    표 padding을 넓히기 위해 스타일 변경
    replace(outputs('表の列名を折り返し禁止にするためにスタイルを変更する'),'<td>','<td style="padding:7px">')
    

    메시지 게시



    그리고는 「출력」을 Teams 에 투고하도록(듯이) 설정합니다.
    제목에 현재 날짜와 시간을 둡니다. 이것으로 완료됩니다.



    현재 일시
    formatDateTime(convertTimeZone(utcNow(), 'UTC', 'Tokyo Standard Time'),'yyyy/MM/dd HH:mm') 
    

    완성 이미지(재게재)



    좋은 웹페이지 즐겨찾기