擅长:python、mysql、java
<p>在django1.3及更高版本中,可以使用<a href="https://docs.djangoproject.com/en/dev/topics/logging/#topic-logging-parts-filters" rel="nofollow">logging filter</a>类来抑制您不感兴趣的异常。下面是我使用的日志过滤器类,用于严格禁止从<code>_get_raw_post_data()</code>引发的IOError异常:</p>
<pre><code>import sys, traceback
class _SuppressUnreadablePost(object):
def filter(self, record):
_, exception, tb = sys.exc_info()
if isinstance(exception, IOError):
for _, _, function, _ in traceback.extract_tb(tb):
if function == '_get_raw_post_data':
return False
return True
</code></pre>
<p>在django1.4中,您将能够消除大部分的复杂性并抑制新的异常类<code>UnreadablePostError</code>。(见<a href="https://code.djangoproject.com/changeset/17493" rel="nofollow">this patch</a>)。在</p>