如何从期刊中获得 "错误 "信息? - 页 2 123 新评论 Proximus 2013.09.11 22:35 #11 GumRai: 我已经举了一个例子,但被你拒绝了。 确保出现错误时的print()包括一个容易识别的字符串。 然后当你打开日志文件时,用编辑/查找来定位那个字符串,这样就能同时找到错误报告。 GumRai: 如果你知道你将有大量的条目在日志文件中进行分类,那么在print()中加入类似 "xyz "的内容,然后使用Edit/Find来定位打印语句,可能是一个好主意。问题不在于此。你也否定了我的帖子。问题不在于我看不到错误,而在于有超过10,000个日志条目,你想让我在所有条目中手动搜索?你想让我在所有的日志中手动搜索吗?+一个随机的 "xyz "将如何与错误代码 相关联。解决方案是,正如我所说的,某种代码可以检查是否有错误发生,并将其打印到日志中,或者更好的是,如果有多个错误发生,计算有多少个。). Keith Watford 2013.09.12 02:37 #12 Proximus: 问题不在于我看不到错误,而在于有超过10,000个日志条目,你想让我在所有这些条目中手动搜索?你想让我在所有的日志中手动搜索吗?+一个随机的 "xyz "将如何与错误代码相关联。解决方案是,正如我所说的,某种代码可以检查是否有错误发生,并将其打印到日志中,或者更好的是,如果有多个错误发生,计算有多少个。). 当你使用编辑/查找时,你是如何手动搜索的? 如果你有10,000个条目,而一个特定的字符串只出现了3次,那就需要点击3次鼠标来定位它们。 如果你只对包含 "错误 "这个词的条目感兴趣,那么就用查找来定位 "错误 "这个词。 Proximus 2013.09.12 21:28 #13 GumRai: 当你使用编辑/查找时,你是如何手动搜索的? 如果你有10,000个条目,而一个特定的字符串只出现了3次,那么就需要点击3次鼠标来定位它们。 如果你只对包含 "错误 "一词的条目感兴趣,那么就用查找来定位 "错误 "一词。 1)是的,这就是为什么我需要自动化的东西,我相信MQ4可以让你开发一个小代码,可以在EA内完成这个工作。 2) 这并不重要。 3) 如果有900条错误日志怎么办?如果我想把不同类型的错误分组,比如我得到了错误nr 1和错误4056,因为错误nr 1不是那么糟糕的错误,但它隐藏在许多错误nr 1字符串中,如果我想计算它们呢? 事实上,让我们改变我的请求,因为我看到你们不明白,我在问什么。所以我的新请求是如何计算不同类型或日记中的错误? 例如:错误nr.1 x 10件 错误nr.4056 x 200件 错误号码4020 x 500件 就像这样,如何让EA向我显示某类错误的数量? Simon Gniadkowski 2013.09.12 21:42 #14 Proximus: 1) 是的,这就是为什么我需要自动化的东西,我相信MQ4可以让你开发一个小的代码,可以在EA中完成这个工作。 2) 这并不重要。 3) 如果有900条错误日志怎么办?如果我想对不同类型的错误进行分组,比如我得到错误nr 1和错误4056,因为错误nr 1不是那么糟糕的错误,但它隐藏在许多错误nr 1字符串中,如果我想计算它们呢? 事实上,让我们改变我的要求,因为我看到你们不明白,我在问什么。所以我的新要求是如何计算不同类型或日记中的错误? 例如:错误nr.1 x 10件 错误nr.4056 x 200件 错误编号4020 x 500件 就像这样,如何让EA显示出某一类型的错误有多少? 如果你有一个错误,请修复它......如果你有许多错误,请全部修复......如果你的日志中有2000个错误,你就有严重的问题,没有必要去寻找,修复你的任何错误。 Proximus 2013.09.17 21:15 #15 RaptorUK: 如果你有一个错误,请修复它 ... ... 如果你有许多错误,请全部修复 ... ... 如果你的日志中有2000个错误,你就有严重的问题,没有必要去寻找,修复你的任何错误。 是的,这毕竟是重点,但是你知道当你的日志中有2000个交易时,它总是充满了订单修改/关闭/打开的数据,在所有这些无用的垃圾邮件中,你几乎看不到错误信息。这就是为什么我需要开发某种错误捕捉器代码,如果出现哪怕是一个错误,都会通知我。 Simon Gniadkowski 2013.09.17 21:18 #16 Proximus: 是的,这毕竟是重点,但你知道当你有2000个交易记录时,它总是充满了订单修改/关闭/打开的数据,在所有这些无用的垃圾邮件中,你几乎看不到错误信息。这就是为什么我需要开发某种错误捕捉器代码,如果出现哪怕是一个错误,都会通知我。 不,只要Print("MyEANameError: ", Error, . . . ) 然后搜索MyEANameError,你就会发现所有的错误。 Keith Watford 2013.09.18 01:48 #17 Proximus似乎没有理解Raptor的意思。 我写了这个测试代码 for(int line=1;line<=10000;line++) { if(line==5000) { Print("HeeHee, I'm line number 5,000 - you'll never find me!"); continue; } Print("This is line ",line); } 所以我现在有一个有10,000行Print()的日志 使用编辑/查找,HeeHee不会出现在任何其他行的代码中 并简单地点击查找下一个,一毫秒之后 就这么简单,只需使用默认的记事本就可以了 Proximus 2013.09.18 03:54 #18 你真的不了解我Proximus: 1) 是的,这就是为什么我需要自动化的东西,我相信MQ4可以让你开发一个小的代码,可以在EA中完成这个工作。 2) 这并不重要。 3) 如果有900条错误日志怎么办?如果我想对不同类型的错误进行分组,比如我得到错误nr 1和错误4056,因为错误nr 1不是那么糟糕的错误,但它隐藏在许多错误nr 1字符串中,如果我想计算它们呢? 事实上,让我们改变我的要求,因为我看到你们不明白,我在问什么。所以我的新要求是如何从日志中计算不同类型或错误? 例如:错误nr.1 x 10件 错误nr.4056 x 200件 错误编号4020 x 500件 就像这样,如何让EA向我显示某类错误的数量? 请看我的回答。所以我的想法是捕捉不同类型的错误,和/或计算它们。我想知道有多少个和它的类型,因为按类型计算错误比在记事本中搜索更容易。想象一下这样的情况:有10个错误和10个不同的隐藏在行间的错误,或者有数百个错误,每个都是不同的,所以如果我搜索比如说错误号4025我怎么知道还有一个错误号4000?我显然不会去搜索所有的错误代码。因此,如果有一台计数机,按类型统计所有的错误,并偶尔打印出来,那不是更容易吗? +10.000行是不够的,我不确定MT4到底保留了多少行,但我确信对我来说是不够的。我现在通常做5000-7000个交易或更多的回测,1行用于订单打开,3-4行用于追踪订单修改,1行用于订单关闭=6行/交易*7000个交易=~42000行或模式,我确信MT4日志不会保留这么多:) 所以,是的,计数法会更有效! RaptorUK: 不,只要Print("MyEANameError: ", Error, . . . ) 然后搜索MyEANameError,你就会发现所有的错误。 这也不是解决方案,"Error "这个变量里有什么? 另外,如何测试 是否发生了错误?如果可能的话,如何区分不同类型的错误?显然要用代码来表示。 ydrol 2013.09.18 08:48 #19 我希望我没有说得太明显,如果我说得太明显,请原谅!我怀疑每个人的回答都假定你知道。 我猜想每个人在回答时都认为你已经知道了,但是MT日志只是一些文件,每天一个,其中最新文件的最后几行会显示在GUI中。 这些文件(用于回测)位于MetaTrader安装文件夹/测试器/日志 中。 你可以使用任何可用的工具进行搜索--例如,用dos命令Findstr来提取文件...... cd MetaTrader Folder/tester/logs Findstr some_text *.log Findstr some_text *.log > small_log.txt 再次道歉,如果我说的是显而易见的,而你实际上是在寻找别的东西!? Ex Ovo Omnia 2013.09.18 09:32 #20 ydrol:再次道歉,如果我说的是显而易见的事,而你实际上是在寻找别的东西!? 不需要道歉,但我理解,OP对发现和纠正错误 不感兴趣,而是对他们的统计数据感兴趣。 123 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我已经举了一个例子,但被你拒绝了。
确保出现错误时的print()包括一个容易识别的字符串。
然后当你打开日志文件时,用编辑/查找来定位那个字符串,这样就能同时找到错误报告。
如果你知道你将有大量的条目在日志文件中进行分类,那么在print()中加入类似 "xyz "的内容,然后使用Edit/Find来定位打印语句,可能是一个好主意。
问题不在于此。你也否定了我的帖子。问题不在于我看不到错误,而在于有超过10,000个日志条目,你想让我在所有条目中手动搜索?你想让我在所有的日志中手动搜索吗?+一个随机的 "xyz "将如何与错误代码 相关联。解决方案是,正如我所说的,某种代码可以检查是否有错误发生,并将其打印到日志中,或者更好的是,如果有多个错误发生,计算有多少个。).
问题不在于我看不到错误,而在于有超过10,000个日志条目,你想让我在所有这些条目中手动搜索?你想让我在所有的日志中手动搜索吗?+一个随机的 "xyz "将如何与错误代码相关联。解决方案是,正如我所说的,某种代码可以检查是否有错误发生,并将其打印到日志中,或者更好的是,如果有多个错误发生,计算有多少个。).
当你使用编辑/查找时,你是如何手动搜索的?
如果你有10,000个条目,而一个特定的字符串只出现了3次,那就需要点击3次鼠标来定位它们。
如果你只对包含 "错误 "这个词的条目感兴趣,那么就用查找来定位 "错误 "这个词。
当你使用编辑/查找时,你是如何手动搜索的?
如果你有10,000个条目,而一个特定的字符串只出现了3次,那么就需要点击3次鼠标来定位它们。
如果你只对包含 "错误 "一词的条目感兴趣,那么就用查找来定位 "错误 "一词。
1)是的,这就是为什么我需要自动化的东西,我相信MQ4可以让你开发一个小代码,可以在EA内完成这个工作。
2) 这并不重要。
3) 如果有900条错误日志怎么办?如果我想把不同类型的错误分组,比如我得到了错误nr 1和错误4056,因为错误nr 1不是那么糟糕的错误,但它隐藏在许多错误nr 1字符串中,如果我想计算它们呢?
事实上,让我们改变我的请求,因为我看到你们不明白,我在问什么。所以我的新请求是如何计算不同类型或日记中的错误?
例如:错误nr.1 x 10件
错误nr.4056 x 200件
错误号码4020 x 500件
就像这样,如何让EA向我显示某类错误的数量?
1) 是的,这就是为什么我需要自动化的东西,我相信MQ4可以让你开发一个小的代码,可以在EA中完成这个工作。
2) 这并不重要。
3) 如果有900条错误日志怎么办?如果我想对不同类型的错误进行分组,比如我得到错误nr 1和错误4056,因为错误nr 1不是那么糟糕的错误,但它隐藏在许多错误nr 1字符串中,如果我想计算它们呢?
事实上,让我们改变我的要求,因为我看到你们不明白,我在问什么。所以我的新要求是如何计算不同类型或日记中的错误?
例如:错误nr.1 x 10件
错误nr.4056 x 200件
错误编号4020 x 500件
就像这样,如何让EA显示出某一类型的错误有多少?
如果你有一个错误,请修复它 ... ... 如果你有许多错误,请全部修复 ... ... 如果你的日志中有2000个错误,你就有严重的问题,没有必要去寻找,修复你的任何错误。
是的,这毕竟是重点,但你知道当你有2000个交易记录时,它总是充满了订单修改/关闭/打开的数据,在所有这些无用的垃圾邮件中,你几乎看不到错误信息。这就是为什么我需要开发某种错误捕捉器代码,如果出现哪怕是一个错误,都会通知我。
Proximus似乎没有理解Raptor的意思。
我写了这个测试代码
所以我现在有一个有10,000行Print()的日志
使用编辑/查找,HeeHee不会出现在任何其他行的代码中
并简单地点击查找下一个,一毫秒之后
就这么简单,只需使用默认的记事本就可以了
1) 是的,这就是为什么我需要自动化的东西,我相信MQ4可以让你开发一个小的代码,可以在EA中完成这个工作。
2) 这并不重要。
3) 如果有900条错误日志怎么办?如果我想对不同类型的错误进行分组,比如我得到错误nr 1和错误4056,因为错误nr 1不是那么糟糕的错误,但它隐藏在许多错误nr 1字符串中,如果我想计算它们呢?
事实上,让我们改变我的要求,因为我看到你们不明白,我在问什么。所以我的新要求是如何从日志中计算不同类型或错误?
例如:错误nr.1 x 10件
错误nr.4056 x 200件
错误编号4020 x 500件
就像这样,如何让EA向我显示某类错误的数量?
请看我的回答。所以我的想法是捕捉不同类型的错误,和/或计算它们。我想知道有多少个和它的类型,因为按类型计算错误比在记事本中搜索更容易。想象一下这样的情况:有10个错误和10个不同的隐藏在行间的错误,或者有数百个错误,每个都是不同的,所以如果我搜索比如说错误号4025我怎么知道还有一个错误号4000?我显然不会去搜索所有的错误代码。因此,如果有一台计数机,按类型统计所有的错误,并偶尔打印出来,那不是更容易吗?
+10.000行是不够的,我不确定MT4到底保留了多少行,但我确信对我来说是不够的。我现在通常做5000-7000个交易或更多的回测,1行用于订单打开,3-4行用于追踪订单修改,1行用于订单关闭=6行/交易*7000个交易=~42000行或模式,我确信MT4日志不会保留这么多:)
所以,是的,计数法会更有效!
不,只要Print("MyEANameError: ", Error, . . . ) 然后搜索MyEANameError,你就会发现所有的错误。
我希望我没有说得太明显,如果我说得太明显,请原谅!我怀疑每个人的回答都假定你知道。
我猜想每个人在回答时都认为你已经知道了,但是MT日志只是一些文件,每天一个,其中最新文件的最后几行会显示在GUI中。
这些文件(用于回测)位于MetaTrader安装文件夹/测试器/日志 中。
你可以使用任何可用的工具进行搜索--例如,用dos命令Findstr来提取文件......
cd MetaTrader Folder/tester/logs
Findstr some_text *.log
Findstr some_text *.log > small_log.txt
再次道歉,如果我说的是显而易见的,而你实际上是在寻找别的东西!?
再次道歉,如果我说的是显而易见的事,而你实际上是在寻找别的东西!?
不需要道歉,但我理解,OP对发现和纠正错误 不感兴趣,而是对他们的统计数据感兴趣。