Does anyone have an idea on how to copy the metadata properly, or should I consider restructuring the pipeline for a better approach?
To achieve this, start by copying the list of files as an array. Then use a data flow to transform the array so each file name appears on its own row.
Use the Get Metadata activitys to retrieve the list of files from your source and destination blob container.
Use filter activity to filter out non existing files.
Use a For Each activity to loop through the filtered list and Use append variable to store each file name to a variable in array format.
Create a dummy file with only one value and use the Copy Activity to append the append variable value to it as an additional column.
Filenames
):split(replace(replace(Filenames, '[', ''), ']', ''), ',')
check this similar issue : https://learn.microsoft.com/en-us/answers/questions/912250/adf-write-file-names-into-file