আমি আমাদের অ্যাপ্লিকেশন দ্বারা ব্যবহৃত বিবৃতি ট্রেস করতে বর্ধিত ইভেন্টগুলি ব্যবহার করছি। আমি একটি সেশন তৈরি করেছি যা আমি চাই তথ্য সংগ্রহ করব, তা ছাড়া আমি ব্যবহৃত পরামিতিগুলির আসল মানগুলিও জানতে চাই ।
আমি একটি উত্পাদকহীন পরিবেশে এই ট্রেসটি সম্পাদন করছি এবং ট্রেস দ্বারা আঘাত করা কোনও সম্পাদনা গ্রহণযোগ্য।
সমস্ত প্রশ্নের হাইবারনেট থেকে উদ্ভূত এবং আকারে প্যারামিটারাইজ করা হয়েছে:
SELECT a, b, c From Customer where CustomerId = @P0
এটি আমার সেশন সেটআপ।
CREATE EVENT SESSION [TracingForStatements] ON SERVER
ADD EVENT sqlserver.sp_statement_completed (
ACTION (
sqlserver.session_id,
package0.collect_system_time,
sqlserver.transaction_id,
package0.event_sequence
)
WHERE (
sqlserver.database_id=555
)
)
ADD TARGET package0.ring_buffer(SET max_memory= 128000)
WITH (EVENT_RETENTION_MODE = NO_EVENT_LOSS,
MAX_DISPATCH_LATENCY = 1 SECONDS)
বন্দী হওয়া বিবৃতিগুলিতে ব্যবহৃত পরামিতিগুলির আসল মানগুলি আমি কীভাবে ক্যাপচার করব? এটা কি সম্ভব?
- সম্পাদনা (ওয়ার্করাউন্ড): ইভেন্টটি আরপিসি_কম্পটেডে পরিবর্তন করা আমাকে হাইবারনেট থেকে ডেকে নেওয়া সম্পূর্ণ এসকিএল কমান্ড (সমস্ত প্যারামিটার মান সহ) দেয়। অন্যান্য ক্ষেত্রে প্যারামিটারের মানগুলি কীভাবে ক্যাপচার করা সম্ভব তা জানা থাকলেও সম্ভব হবে it