title: How to capture each changes in v$session in Oracle?
body: <p>Is there any way to capture each and every changes happen to <code>v$session</code> table? </p>
  
  <p>The <code>active session history</code> does not have every bits of changes. I tried to write a PL/SQL block that will copy everything of <code>v$session</code> table to another table each second. But, one second is still too long as I am missing out many active / inactive / kill status changes. </p>
  
  <p>Is it possible to write something similar to trigger that will copy the changes when any insert / update / delete happens?
  I tried to create trigger on <code>v$session</code>, but it looks like triggers like those can not be created for views like <code>v$session</code>. </p>
  
  <p>Basically what I am looking for is any way to capture all the changes in <code>v$session</code>.</p>
  
  <p>With that, I am planning to do some trend analysis to identify session behaviors.</p>
  
  <p>Any help?</p>
  
  <p>PS: Can somebody tell what is the refresh rate of <code>v$session</code>? With that info, if I capture everything within the time interval of the refresh rate, I should be able to capture all the changes I believe.</p>
  
  <p>Any suggestions?</p>