Hi, I'm a little confused on your heading mapping as in your list (numbered 1-6) which is what I'm presuming your desired outcome is, SFN looks to be what the log file refers to as 'source'. The code here provides the same sort of output as you've listed (1-6) but I don't know what SAT stands for so I've mapped SAT to be the Source from the logging. If this isn't correct you might need to adjust accordingly.
$header = "Date", "Process", "MessageType", "Message", "SFN", "Source", "SAT","Dest","FSize"
$log = Import-csv -Delimiter ',' -Header $header -path C:\Users\abc\File.log
$log = $log | Select @{Name = 'Date'; Expression = {$_.Date.Split("")[0]}}, @{Name = 'Time'; Expression = {$_.Date.Split("")[1]}}, @{Name = 'MessageType'; Expression = {$_.MessageType.Trim()}}, @{Name = 'Message'; Expression = {$_.Message}},@{Name = 'SFN'; Expression = {$_.SFN.Replace("SFN - ","")}},@{Name = 'SAT'; Expression = {$_.Source.Replace("Source - ","")}},@{Name = 'FSize'; Expression = {$_.FSize.Replace("FSize - ","").Replace("B","")}}
$log | Where-Object {$_.MessageType -eq 'INFO'}
I've used calculated expressions to split the date/time into two columns and to tidy up some of the text such as on 'MessageType' the data in message actually has leading/trailing spaces so the Where-Object wouldn't work. Also not sure if the logging is right as it seem the 3rd entry is showing as a type 'INFO' tho its an error message and the 4th is showing a type 'ERROR' tho it looks the same as the 1st and 2nd lines.