WinServer 2016 中基于 Clarion 的应用程序,已冻结。我们可以用来收集更多信息的工具的建议
Clarion based application in WinServer 2016, frozen. Suggestions needed on tools we could use to gather more information
我在 Win Server 2016 中有一个 clarion 应用程序 运行 与 sybase 数据库对话,在过去的几周里,我们发现该应用程序在给定时间对不同用户冻结。但是,用户可以这样离开会话并开始一个新的会话并且效果很好。众所周知,用户会在一台远程服务器或多台服务器上使用同一应用程序的多个实例。话虽如此,我想获得有关 freezeup 的更多信息,并查看了系统中的应用程序事件日志,在那里我看到 explorer.exe 崩溃,但这些与问题在某些时间发生的时间有关,但并非总是如此,检查了 Sybase 的数据库事务日志,我没有发现任何崩溃、错误或卡住的连接。话虽如此,由于我已经用尽了所有可能的选择,我正在与你们联系,以了解是否有任何其他地方我可以寻找以收集更多信息。
我很想知道我们可以用来收集 windows 上冻结的 clarion 应用程序日志的任何应用程序/工具。也很高兴知道是否有人遇到过这种情况,以及你们在哪里以及如何调查这个问题。
在此先感谢您的帮助。
Clarion 的运行时库和数据库驱动程序需要持久连接。远程 ODBC 的正常断开连接可能会导致问题(包括应用程序挂起),除非您在 ABC 文件管理器级别测试它们并重新连接,或使用类似的步骤进行测试和恢复。
如果您正在寻找有关驱动程序和 SQL 后端之间发生的事情的细节,我建议使用 Clarion 的数据库驱动程序跟踪工具。来自帮助主题:“Logging Driver I/O for debugging”:
要在 debugview 中查看跟踪详细信息,请将目标跟踪文件命名为 "DEBUG:"
日志记录打开指定的日志文件进行独占访问。如果文件存在,则将新的日志数据追加到文件中。
按需记录
对于按需日志记录,您可以在程序中使用 属性 语法来有条件地打开和关闭各种级别的日志记录。日志记录对目标 table 和目标 table 是主要 table.
的任何视图有效
file{PROP:Profile}=Pathname !Turns Clarion I/O logging on
file{PROP:Profile}="DEBUG:" !Turns Clarion I/O logging on and
!sends output via OutputDebugString()
!(viewable via debugview, etc)
file{PROP:Profile}='' !Turns Clarion I/O logging off
PathName = file{PROP:Profile} !Queries the name of the log file
file{PROP:Log}=string !Writes the string to the log file
file{PROP:Log}="DEBUG:" !Writes the string to the log file
file{PROP:Details}=1 !Turns Record Buffer logging on
fFile{PROP:Details}=0 !Turns Record Buffer logging off
其中路径名是要创建的日志文件的完整路径名或文件名。如果不指定路径,驱动程序将日志文件写入当前目录。
您还可以使用 SEND() 命令和 LOGFILE 驱动程序字符串完成按需日志记录。有关详细信息,请参阅日志文件。
我经常使用的例子,是基于上面的帮助:
SYSTEM{PROP:DriverTracing} = '1'
CRMNotes{PROP:TraceFile} = 'DEBUG:'
CRMNotes{PROP:Details}=1
CRMNotes{PROP:Profile}= 'DEBUG:'
CRMNotes{PROP:LogSQL} = 1
我在 Win Server 2016 中有一个 clarion 应用程序 运行 与 sybase 数据库对话,在过去的几周里,我们发现该应用程序在给定时间对不同用户冻结。但是,用户可以这样离开会话并开始一个新的会话并且效果很好。众所周知,用户会在一台远程服务器或多台服务器上使用同一应用程序的多个实例。话虽如此,我想获得有关 freezeup 的更多信息,并查看了系统中的应用程序事件日志,在那里我看到 explorer.exe 崩溃,但这些与问题在某些时间发生的时间有关,但并非总是如此,检查了 Sybase 的数据库事务日志,我没有发现任何崩溃、错误或卡住的连接。话虽如此,由于我已经用尽了所有可能的选择,我正在与你们联系,以了解是否有任何其他地方我可以寻找以收集更多信息。
我很想知道我们可以用来收集 windows 上冻结的 clarion 应用程序日志的任何应用程序/工具。也很高兴知道是否有人遇到过这种情况,以及你们在哪里以及如何调查这个问题。
在此先感谢您的帮助。
Clarion 的运行时库和数据库驱动程序需要持久连接。远程 ODBC 的正常断开连接可能会导致问题(包括应用程序挂起),除非您在 ABC 文件管理器级别测试它们并重新连接,或使用类似的步骤进行测试和恢复。
如果您正在寻找有关驱动程序和 SQL 后端之间发生的事情的细节,我建议使用 Clarion 的数据库驱动程序跟踪工具。来自帮助主题:“Logging Driver I/O for debugging”:
要在 debugview 中查看跟踪详细信息,请将目标跟踪文件命名为 "DEBUG:"
日志记录打开指定的日志文件进行独占访问。如果文件存在,则将新的日志数据追加到文件中。
按需记录
对于按需日志记录,您可以在程序中使用 属性 语法来有条件地打开和关闭各种级别的日志记录。日志记录对目标 table 和目标 table 是主要 table.
的任何视图有效file{PROP:Profile}=Pathname !Turns Clarion I/O logging on
file{PROP:Profile}="DEBUG:" !Turns Clarion I/O logging on and
!sends output via OutputDebugString()
!(viewable via debugview, etc)
file{PROP:Profile}='' !Turns Clarion I/O logging off
PathName = file{PROP:Profile} !Queries the name of the log file
file{PROP:Log}=string !Writes the string to the log file
file{PROP:Log}="DEBUG:" !Writes the string to the log file
file{PROP:Details}=1 !Turns Record Buffer logging on
fFile{PROP:Details}=0 !Turns Record Buffer logging off
其中路径名是要创建的日志文件的完整路径名或文件名。如果不指定路径,驱动程序将日志文件写入当前目录。
您还可以使用 SEND() 命令和 LOGFILE 驱动程序字符串完成按需日志记录。有关详细信息,请参阅日志文件。
我经常使用的例子,是基于上面的帮助:
SYSTEM{PROP:DriverTracing} = '1'
CRMNotes{PROP:TraceFile} = 'DEBUG:'
CRMNotes{PROP:Details}=1
CRMNotes{PROP:Profile}= 'DEBUG:'
CRMNotes{PROP:LogSQL} = 1