私はC#を使用してログを処理していますが、コードのこの部分でパフォーマンスのオーバーヘッドが非常に悪くなっています。私は何をすべきか?
私もログをフィルタリングしますが。それでも処理には2〜3分以上かかります。私のOSログは16MBのサイズに設定されています。しかし、たぶん1台のサーバーでは多かれ少なかれそうです。
List<LogParserDataEntity> dataEntities = new List<LogParserDataEntity>();
.
.
.
for (; !rs.atEnd(); rs.moveNext())
{
dataEntities.Add(new LogParserDataEntity(
rs.getRecord().getValue("eventlog").ToString(),
rs.getRecord().getValue("recordnumber").ToString(),
rs.getRecord().getValue("timegenerated").ToString(),
rs.getRecord().getValue("timewritten").ToString(),
rs.getRecord().getValue("eventid").ToString(),
rs.getRecord().getValue("eventtype").ToString(),
rs.getRecord().getValue("eventtypename").ToString(),
rs.getRecord().getValue("eventcategory").ToString(),
rs.getRecord().getValue("eventcategoryname").ToString(),
rs.getRecord().getValue("sourcename").ToString(),
rs.getRecord().getValue("strings").ToString(),
rs.getRecord().getValue("computername").ToString(),
rs.getRecord().getValue("sid").ToString(),
rs.getRecord().getValue("message").ToString(),
rs.getRecord().getValue("data").ToString()
));
}