cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
533
Views
0
Helpful
1
Replies

composite_device_health_interface.tcl

NED PH
Level 1
Level 1

                Please could you help us troubleshoot one issue on our EEM and TCL configuration. We uploaded a script that will send us  Interface errors and other stuff but it seems that some background script is monitoring the uploaded script and stop it while processing. Something like security feature. The script was working when it was on a lab but when I loaded the script on our production router, the logs below were generated. I’m not sure if this “system:/lib/tcl/base.tcl” seems to have catch the loaded script. The difference is the platform I used. Specs below. Attached herein is the TCL script.

Production Router Used:

7206VXR NPE-G2

c7200p-advipservicesk9-mz.124-4.XD11.bin

Logs:

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl: can't read "parent_interface": no such variable

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:     while executing

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl: "if { $parent_interface != $foobar } {

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:                   if [catch {cli_read_drain $cli(fd)} result] {

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:                           error $result $errorInfo

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:                   }

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:                   if [catch {cli_read_drain..."

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:     invoked from within

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl: "$slave eval $Contents"

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:     (procedure "eval_script" line 7)

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:     invoked from within

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl: "eval_script slave $scriptname"

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:     invoked from within

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl: "if {$security_level == 1} {       #untrusted script

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:      interp create -safe slave

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:      interp share {} stdout slave

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:      interp share {} stderr slave..."

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl:     (file "system:/lib/tcl/base.tcl" line 50)

Mar 28 06:36:42.902 UTC: %HA_EM-6-LOG: composite_device_health_interface.tcl: Tcl policy execute failed: can't read "parent_interface": no such variable

1 Reply 1

Joe Clarke
Cisco Employee
Cisco Employee

I had previously identified some bugs in this script.  See this thread for an updated version.

https://supportforums.cisco.com/message/3033984#3033984