Có một cách đơn giản (được xây dựng trong hibernate
) để đạt được điều đó. Nó đã được sửa bởi HHH-3659 trong 3.5.4
và 3.6.0.Beta1
.
Để đi cho nó, sử dụng:
- ghi trên bao bì:
org.hibernate.stat
ít nhất là trên INFO
và
- bộ ngủ đông sở hữu:
hibernate.generate_statistics=true
Sau đó tất cả các SQL
s sẽ được đăng nhập bao gồm số lượng hàng được tìm nạp và thời gian thực hiện truy vấn.
Hơn nữa, nếu quan tâm, nó cung cấp số liệu thống kê về truy vấn. Để có họ tiếp xúc qua JMX
và xem chúng bằng cách sử JConsole
, bạn có thể sử dụng Hibernate JConsole plugin
, có sẵn trên: http://hibernate-jcons.sourceforge.net/
Nguồn
2013-08-13 08:33:14
Hi Peter, Nó làm việc cho tôi nhưng tôi đã phải thay đổi mức độ của log4j để theo dõi trên org.hibernate.stat để có được điều đó đang làm việc. Cảm ơn vì giải pháp của bạn –
Điều đó phù hợp với tôi! Trong logback.xml: Trong hibernate.properties: hibernate.generate_statistics = true –
formica
Nó hoạt động cho các truy vấn JDBC được gửi bởi org.hibernate.loader. Trình tải, nhưng không phải những trình được gửi bởi org.hibernate.jdbc.AbstractBatcher (tải chậm). Giải pháp đơn giản nhất là định cấu hình ghi nhật ký DEBUG cho "org.hibernate. *" Và xem truy vấn nào được thực hiện tại dấu thời gian nhật ký nào. – metatechbe