SetErrorFilter

过滤错误日志。

SetErrorFilter(filters)

正则表达式字符串。 filters true string


function main() {
    SetErrorFilter("502:|503:|tcp|character|unexpected|network|timeout|WSARecv|Connect|GetAddr|no such|reset|http|received|EOF|reused")
}

def main():
    SetErrorFilter("502:|503:|tcp|character|unexpected|network|timeout|WSARecv|Connect|GetAddr|no such|reset|http|received|EOF|reused")

void main() {
    SetErrorFilter("502:|503:|tcp|character|unexpected|network|timeout|WSARecv|Connect|GetAddr|no such|reset|http|received|EOF|reused");
}
过滤常见错误。 “`javascript function main() { // 鉴于测试代码,不使用商品期货策略一般架构,这里仅判断exchange.IO(“status”)函数,判断连接期货公司前置机成功后立即执行测试代码。股票证券无需使用exchange.IO(“status”)判断连接状态 while(!exchange.IO(“status”)) { Sleep(1000) } // 设置合约代码 exchange.SetContractType(“rb888”)

// 随意查询一个不存在的订单,ID为123,故意让接口报错
var order = exchange.GetOrder("123")
Log(order)
// 过滤HTTP 502错误、GetOrder接口错误,设置错误过滤后,第二次调用GetOrder不再报错
SetErrorFilter("502:|GetOrder")
order = exchange.GetOrder("123")
Log(order)

} python def main(): while not exchange.IO(“status”): Sleep(1000)

exchange.SetContractType("rb888")

order = exchange.GetOrder("123")
Log(order)
SetErrorFilter("502:|GetOrder")
order = exchange.GetOrder("123")
Log(order)```

”`cpp void main() { while(exchange.IO(“status”) == 0) { Sleep(1000); }

exchange.SetContractType("rb888");

TId orderId;
Order order = exchange.GetOrder(orderId);
Log(order);
SetErrorFilter("502:|GetOrder");
order = exchange.GetOrder(orderId);
Log(order);

}“` 过滤特定接口的错误信息。

被此正则表达式匹配的错误日志将不会上传到日志系统,可多次调用(无次数限制)设置多个过滤条件。多次设置的正则表达式会累积生效。可通过设置空字符串来重置错误日志过滤的正则表达式:SetErrorFilter("")

被过滤的日志不再写入托管者目录下对应实盘ID的数据库文件中,防止频繁报错导致数据库文件过度膨胀。