I can only speculate.
What was the file path of the log you show extract here ?
Diag:
There are various log avail (including the GW display windows but require a lot of time to be analyzed (Best is to massage it as a CSV then open in Excel and use Excel to sort by kind or date or keyword or ...)
Generally people log everything themselves (you should), search on this forum about Log there are various thread on the subject.
Issue:
your report look to me like it should be interpreted as what messages say.
Looks like you look for a non existing instrument or no data exist for this instrument (Which one ?) Then you may have a logic that send a cancel (which is good in most cases )
but the request didn't behave as expected (was non longer answering something you expect) then you repeat the cancel.
Is it exactly 300 times ? if so then look for "300" in your code.
To be noticed: The difference between the error 366 (id 41690) and the error 162 cancel id (416904)? which is the same as the id: entry of your log.
Remember that many request have a "requestXXend" like historicalDataEnd, once done, your served and no need to trigger anything else aside of code housekeeping.
Cancel in is supposed to be used on a pending subscription. Over-Cancel is harmless as long as you know how to filter back messages.
?