2010-12-20 5 views
1

私たちは多くのログを収集しています。これらのログを保存するためにデータベースまたはファイルを使用し、テキスト検索を使用してそれらを検索できるようにしたいと考えています。これを効率的に行う方法はありますか?hibernate検索ロギングテキストファイル

答えて

0

だから何あなたが行うようになったことは、あなたがのLucene実装(私は検索を休止状態使用をお勧めします)その意志インデックスデータベースに保存されている例外の文字列を作成したより

ExceptionPersistingService eps = new ExceptionPersistingService(); 

try{ 
    //some code that might trow exception 
}catch(Exception e){ 
    eps.saveNewExceptin(getStackTrace(e)); 
} 

public static String getStackTrace(Throwable aThrowable) { 
    //add the class name and any message passed to constructor 
    final StringBuilder result = new StringBuilder("Trace: "); 
    result.append(aThrowable.toString()); 
    final String NEW_LINE = "<br>"; 
    result.append(NEW_LINE); 

    //add each element of the stack trace 
    for (StackTraceElement element : aThrowable.getStackTrace()) { 
     result.append(element); 
     result.append(NEW_LINE); 
    } 
    return result.toString(); 
} 

です。 save()メソッドでは、例外が発生したIDDateExceptionStringUser、さらにはURLの詳細を作成することができます。

あなたがしなければならないことは、クエリを解析したり、ファジーなどのクエリを作成して検索結果を楽しむだけです。詳細については、Hibernate Search in ActionLucene in Actionのような本を勉強する必要があります。私は簡単に言及したことをどうやって行うのか、かなり良い例があります。

関連する問題