이전 항목: 잘못 작성된 SQL 문으로 인한 메트릭 급증다음 항목: 예: 임시 테이블 또는 자동으로 생성된 테이블 이름


예: SQL 문의 주석

메트릭 급증의 일반적인 원인 중 하나는 SQL 문에서 주석이 사용된 방식에 있습니다. 예를 들어 다음과 같은 SQL 문이 있다고 가정합니다.

"/* John Doe, user ID=?, txn=? */ select * from table..."

이 경우 SQL 에이전트는 다음과 같이 주석을 메트릭 이름의 일부로 포함하는 메트릭을 생성합니다.

"/* John Doe, user ID=?, txn=? */ select * from table..."

SQL 문에 포함된 주석은 데이터베이스 관리자가 누가 어떤 쿼리를 실행하고 있는지 확인하는 데 유용하며, 쿼리를 실행하는 데이터베이스에서는 주석을 무시합니다. 그러나 SQL 에이전트에서는 SQL 문을 캡처할 때 주석 문자열을 구문 분석하지 않습니다. 따라서 SQL 에이전트에서는 각각의 고유한 사용자 ID마다 고유한 메트릭을 생성하며, 이로 인해 메트릭이 급증하게 될 수 있습니다.

SQL 주석을 작은따옴표로 묶으면 이 문제를 방지할 수 있습니다. 예:

"/*' John Doe, user ID=?, txn=? '*/ select * from table..."

그러면 SQL 에이전트에서는 다음과 같은 메트릭을 생성하며 이 경우 주석으로 인한 고유 메트릭 이름은 더 이상 생성되지 않습니다.

"/* ? */ select * from table..."