This should give the desired items of the section [trigger] 2. It prints the 3th and the 4th field, adjust and play around with the code if you only want to print the 4th field.
awk '
/\[trigger\] 02/{print s;f=1}
f && /\[msisdn\]/{print $3,$4}
f && /\[contentUrl\]/{print $3,$4}
f && /\[timeDuration\]/{print $3,$4;exit}
{s=$3 " " $4}' logfile
Explanation:
/\[trigger\] 02/{print s;f=1}
if we match [trigger] 2, print the time stamp we've saved in the variable s (1 line above) and assign 1 (true) to the variable f.
f && /\[msisdn\]/{print $3,$4}
f && /\[contentUrl\]/{print $3,$4}
f && /\[timeDuration\]/{print $3,$4;exit}
If f is true (1) print field 3 and 4 if one of the line match. After printing the time duration exit the program.
{s=$3 " " $4}' logfile
Store the actual line in the variable s, this is 1 line before the [trigger] line.
awk '
/\[trigger\] 02/{f=1}
/\[timeStamp\]/{ts=$4}
f && /\[msisdn\]/{msi=$4}
f && /\[contentUrl\]/{cU=$4}
f && /\[timeDuration\]/{tD=$4}
f && /APPLICATION/{
s= ts "|" msi "|" cU "|" tD
gsub("\047","",s)
print s
f=0
}' logfile
Explanation:
/\[trigger\] 02/{f=1}
Set the flag f if the a line matches the pattern [trigger] 02.
/\[timeStamp\]/{ts=$4}
f && /\[msisdn\]/{msi=$4}
f && /\[contentUrl\]/{cU=$4}
f && /\[timeDuration\]/{tD=$4}
If the flag is set and the line matches the pattern, assign the 4th field to the variables msi, cU and tD.
The timestamp is on a line before the pattern "[trigger] 02", thus the variable for the timestamp ts must be filled unconditional.
f && /APPLICATION/{
s= ts "|" msi "|" cU "|" tD
gsub("\047","",s)
If the flag is set and the line matches the pattern "APPLICATION", use the string s to format the variables and to delete the quotes.