Possible to have rational times pi recognized as non-integer?



 (%i5) display2d:false;

 (%o5) false
 (%i6) integrate(log(cot(x)-1),x,0,%pi/4);

 Is %pi/8 an ?integer?

 n;
 Is %pi/4 an ?integer?

 n;
 Is 2*%pi an ?integer?

 n;
 (%o6) -(%i*(2*li[2](%i+1)-2*li[2](1-%i))+%pi*log(2))/4
  +%i*li[2]((%i+1)/2)/2-%i*li[2](-(%i-1)/2)/2

I know that in general such checking is quite tricky and presumably
resource-intensive.  Is it possible to write a rule so that during
such checks well-known irrationals times rationals are automatically
known not to be integers?  If so, I'll be happy to file a bug report.