Pat*_*ney 16 java coldfusion networking
ColdFusion代码中有什么方法可以确定代码执行的服务器是什么?我有几个负载均衡的ColdFusion服务器.我希望能够知道在捕获异常时代码运行在哪个服务器上,因此我可以在记录/报告代码中包含该信息.
服务器是Windows 2003/IIS,如果这很重要.我也很想知道如何在Linux/Apache中做到这一点.:-)
Jay*_*son 28
这可能会帮助你进一步......
<cfscript>
machineName = createObject("java", "java.net.InetAddress").localhost.getCanonicalHostName();
hostaddress = createObject("java", "java.net.InetAddress").localhost.getHostAddress();
</cfscript>
<cfdump var="#machineName#"><br />
<cfdump var="#hostaddress#"><br />
Run Code Online (Sandbox Code Playgroud)
您可以使用服务器变量一样
server.coldfusion.appserver
server.coldfusion.expiration
server.coldfusion.productlevel
server.coldfusion.productname
server.coldfusion.productversion
server.coldfusion.rootdir
server.coldfusion.serialnumber
server.coldfusion.supportedlocales
server.os.additionalinformation
server.os.arch
server.os.buildnumber
server.os.name
server.os.version
Run Code Online (Sandbox Code Playgroud)
将代码调整到特定平台.做一次<cfdump var=”#SERVER#” />,看看有什么适用于您的Coldfusion版本.
您可以使用Java调用获取主机名:
<cfscript>
machineName = createObject("java", "java.net.InetAddress").localhost.getHostName();
instanceName = createObject("java", "jrunx.kernel.JRun").getServerName();
</cfscript>
Run Code Online (Sandbox Code Playgroud)