2013-07-19 16 views
5

私はpostgresでC#実行可能ファイルからvacuumプロセスを開始しています。メッセージを実行可能ファイルに戻したいが、出力ウィンドウからメッセージを返すことができない。要するにpostgresからメッセージを取得する

のように、私はNpgsqlのを使ってpostgresの中に、この相当を探しています:私はNpgsqlのを使用して、私のC#コードでこのメッセージを取得したい

// Display messages this code is for SQL server to reteive data back from message tab 

conn.InfoMessage += delegate(object sender, SqlInfoMessageEventArgs e) { 
    stdmForm.txtLastSQLMessages.Text +`=` "\n" + e.Message; 
}; 

+0

メッセージを取得しますか? 'VACUUM VERBOSE'出力を取得しようとしていますか? –

+0

クイック検索では、nPgSQLクライアントで「NOTICE」と下位レベルのログメッセージを取得する方法が見つかりませんでした。 'client_min_messages'を設定することはできますが、nPgSQLからログにアクセスする方法はわかりません。ソースコードを見てみましょうか? –

+0

NPGSQlコードですか? – prvnsaini

答えて

2

私は以下のコードを試しました。それはあなたに完全な実行ログを与えるでしょう。これから私は必要なログを解析しました。それは最善の方法ではありませんが、私は他の何かを見つけることができませんでした。

//log the Vacuum command information 
NpgsqlEventLog.Level = LogLevel.Debug; 
NpgsqlEventLog.LogName = VacuumLogFilePath + "rolling.log"; 
NpgsqlEventLog.EchoMessages = false; 

try 
{ 
    //Run the Vacuum Command 
    NpgsqlCommand comm = new NpgsqlCommand("VACUUM VERBOSE ANALYZE", connection); 
    comm.ExecuteNonQuery(); 

} 
関連する問題