Hey, assuming you have a list of files preserved somewhere as an Array (for now lets assume a Parameter : AllFiles of type array)
follow the below flow:
- use get meta data activity to get list of all child items (All files present in location)
- Use Filter activity to check whether we are missing any files from file list
where item would be : @pipeline().parameters.AllFiles
Condition: @hamed1374 (contains(string(activity('<<Meta data activity>>').output.childItems),item()))
The filter activity output would be your missing file and you can leverage a logic app to send an email notification via logic app
https://blog.devgenius.io/how-to-use-azure-logic-app-to-send-email-notification-from-azure-data-factory-pipelines-c77081bf09ae
Edit :
missing files
Below is a sample JSON code for the same:
{
"name": "pipeline4",
"properties": {
"activities": [
{
"name": "Filter1",
"type": "Filter",
"dependsOn": [],
"userProperties": [],
"typeProperties": {
"items": {
"value": "@pipeline().parameters.S1",
"type": "Expression"
},
"condition": {
"value": "@hamed1374 (contains(pipeline().parameters.S2,item()))",
"type": "Expression"
}
}
}
],
"parameters": {
"S1": {
"type": "array",
"defaultValue": [
1,
2,
3
]
},
"S2": {
"type": "array",
"defaultValue": [
1,
5,
6
]
}
},
"annotations": []
}
}
Filter:
item: @pipeline().parameters.S1
Condition: @hamed1374 (contains(pipeline().parameters.S2,item()))