[apm/apmsql/pq][GoLang] Does NOT support parameterized SQL statement

Hey Guys,
I'm using Elastic APM in GoLang to trace requests for my application. It is awesome that SQL Statements are present in tracing dashboards in Kibana.
But I found that apm/module/apmsql does NOT provide raw statements for parameterized SQL statement.

For example, SELECT * from the_table where colum_1= $1 and colume_2 = $2.
Seems the func (c *conn) QueryContext function in apm/module/apmsql package only feed what's in "query" arguments, which can be a parameterized statement, to "startStmtSpan" function.

APM Agent language and version:
GoLang 1.5.0

Hi @JeckyOH, welcome to the forum!

For example, SELECT * from the_table where colum_1= $1 and colume_2 = $2 .
Seems the func (c *conn) QueryContext function in apm/module/apmsql package only feed what's in "query" arguments, which can be a parameterized statement, to "startStmtSpan" function.

Do you mean that you're expecting to see the query parameters? The agents intentionally do not capture the parameters, as they may contain sensitive information. Why do you want to capture the parameters in APM?

Well, I'm assuming it can show either the entire query or query+parameters. It will be easy for troubleshooting when latency is high. so, no one has such requirements? I understand parameters may contain sensitive data, but maybe let user choose it?

Well, I'm assuming it can show either the entire query or query+parameters. It will be easy for troubleshooting when latency is high. so, no one has such requirements? I understand parameters may contain sensitive data, but maybe let user choose it?

As far as I know, nobody has asked for it so far. That doesn't mean nobody else has the same requirement, they just may not have asked :slight_smile:

It sounds like a reasonable idea to have configuration for this, similar to how we have configuration for capturing HTTP request bodies and HTTP headers. Could you please create a feature request issue?

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.