上一篇有介紹到使用Azure Data Factory 複製數據,而後有集成 Azure DevOps 實現CI/CD,可是對於真正的項目來講,這些確定是不夠的,好比說在執行 Azure Pipeline 的過程當中的監視,監視 Pipeline 的狀態,想經過郵件的方式接受監視信息。html
--------------------我是分割線--------------------web
azure portal 中點擊「create a resource」,輸入框中輸入「Logic App」 進行搜索。函數
Resource group 選擇建立一個新的:「Web_Test_LA_RG」測試
Logic App Name:「cbbateblgweb_ADF_SendEmail」spa
Location 選擇:「East Asia」3d
點擊 「Review + create」code
等待完成後,咱們點擊進入建立好的Logic App。選擇 「Development Tools=》Logic」,點擊 「Blank Logic App」 建立空白的Logic Apphtm
在輸入框中輸入 「Http Request」,選擇搜索結果中 「Trigger」 下的 「When a Http request is received」(當接受一個Http 請求時)blog
點擊 「Save」,等待生成 「HTTP POST URL」ip
稍等片刻後,就能夠看到生成出來的URL,咱們先複製保存,等下能夠用到。
接下來咱們須要配置實例payload,點擊圖中圈中的部分
輸入如下內容:
{ "Title":"", "DataFactoryName":"", "PipeLineName":"", "Message":"", "Time":"" }
點擊 「Done」
完成上述操做後,點擊 「Save」 進行保存操做。而且刷新測試當前建立的Logic App的狀態
回到以前建立好的 Dev 環境的 Azure Factory-----"ADF-CnBateBlogWeb-Dev",咱們須要在Pipeline 中再添加一個叫 「Web」 的 Activities,而且修改當前活動的名稱 「Send Emial」。
接下來須要配置URL Method等信息
URL 連接:就是剛剛建立Logic App 保存後生成的連接。
Method 選擇:「POST」
接下來就是須要咱們自定義Emial通知的內容,也就是Email的正文數據,這個咱們須要添加配置成動態數據,點擊紅色圈中的內容
當前動態數據須要的是Json格式的數據,咱們輸入如下Json 模板信息
{ "Title":"", "DataFactoryName":"", "PipeLineName":"", "Message":"", "Time":"" }
而後就是對當前各個key 的 Value 值進行賦值,我這裏演示的是,將 「DataFactoryName」,「PipeLineName」,「Time」 三個Key 進行參數化動態數據。
選擇對應的系統變量,以及時間函數,點擊 「Finish」
配置完這些信息後,點擊 「Save All」,所有進行保存操做
最後,咱們能夠點擊 「Debug」 測試一下 pipeline 的運行狀態
也能夠回到 Logic App 中點擊查看其運行歷史狀態
能夠看到 output 輸出的內容,如 ADF Name,PipeLine Name 等信息
點擊添加新的步驟,首先咱們須要將接收到的Logic App 中的數據進行模板化,爲何呢?若是咱們直接在添加 emial stage 的郵件內容中加的化,確定不是不太友好的,咱們若是前期提供一個很好的,很漂亮的郵件模板的話,那麼咱們只須要將這個格式化好的郵件模板直接輸出就行了。
搜索 「varibales」,選擇 「Initialize variables」(初始化參數)
Name 輸入 :「Email Content」
Type 選擇:「String」
Value 填充我準備好的模板,如下時模板信息,你們在複製粘貼的時候,將對應的參數填充到對應的位置(我這裏用@param 進行標記了)
<h1>@title</h1> <hr/> <p>ADF Name:@DataFactoryName</p> <br/> <p>Pipeline Name:@PipeLineName</p> <br/> <p>Message:@Message</p> <br/> <p>Time:@Time</p>
接下來就是再添加新的步驟來配置選擇 outlook 郵箱
選擇 「Send Emial V2」
接下來就得登陸鏈接到OutLook 郵箱。你們自行選擇本身的須要登陸的 outlook 郵箱
接下來就是發送郵件的一些郵件參數,你們能夠參考以前我寫的一篇 Logic App 入門
這裏我將郵件發送到本身的QQ郵箱,Subject(主題)、Body(內容體)做爲ADF參數化的一部分和剛剛初始化的參數的一部分,
主題 選擇 動態參數 「title」
Body 選擇剛剛初始化的參數 「Email Content」
配置完這些信息後,咱們進行保存。
咱們回到ADF,點擊 「Debug」 進行測試
同時,咱們也看看Logic App的運行狀態
最關鍵的就是看看是否收到ADF pipelin 運行狀態的監視郵件
BINGO!!! 🍾🍾🍾🍾*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
今天的內容其實很簡單,就是在 ADF中實現電子郵件的發送,去監聽整個Pineline 的運行狀態。同時,咱們還能夠自定義 ADF 動態參數,經過Logic App 添加初始化參數的 Action 將參數模板將這些參數加載展現出來。可是在這裏你們須要注意的是,ADF Pileline 不是每次運行都是成功的,我這裏演示的是成功的狀況,整個是在 ADF pipeline 中的每一個Activites 中能夠設置的,以下圖所示:
咱們能夠根據每一個 Activites 的狀態去發送不一樣的郵件,輸出不一樣的參數。以上就是今天的內容了,謝謝!!!!!!
做者:Allen
版權:轉載請在文章明顯位置註明做者及出處。如發現錯誤,歡迎批評指正。