Azure Stream Analytics Enhances Developer Experience with Improved Error Messaging and Logging
Published Oct 06 2022 10:44 PM 1,418 Views

An Azure Stream Analytics job consists of three components: input, query, and output.  The query itself is based on the SQL query language and can be used to easily filter, sort, aggregate, and join streaming data over periods of time.   


With powerful SQL query language capabilities, users can write query logics from simple pass-through scenarios to rich pattern matching and temporal analysis to calculate aggregates over various streaming time windows – and now, ASA is delivering an even better developer experience by honing in on a new and improved troubleshooting experience for users.  


We have significantly improved many error messages to make them self-contained, descriptive, and actionable. We believe this will help unblock you quickly and improve your productivity.  


In particular, we did the following: 


Where appropriate, query error messages now include error positioning in the error data so users can better identify what went wrong and where to fix it. 




Additionally, ASA has improved the entirety of its error message content to ensure errors are descriptive and actionable.  


Example 1:   




SELECT  value1,  

CollectTop('hey') OVER (ORDER BY value2 ASC, value3 DESC) as top1  

FROM testinput timestamp by Time  

GROUP BY TumblingWindow(second, 5), value1  




Original error message:  Unable to parse 'bigint': ''hey'  

Modified error message: Parameter '0' of function 'collecttop' must be a positive Bigint constant: 'hey'  


Example 2:  




SELECT string_agg(column1, ""comma"") FROM testInput  

GROUP BY HoppingWindow(duration(s, 5), hop(s, 1))  




Original error message:  Expecting a string literal: '"comma"'  

Modified error message: Parameter '1' of function 'string_agg' expecting a string literal: '"comma"'  


The ASA team is committed to continuously improving the troubleshooting experience based on customer feedback, so please share your thoughts, comments, and suggestions below.  

Version history
Last update:
‎Nov 01 2022 04:05 PM
Updated by: