Tuesday, May 4, 2010

General - Set Up Cisco Unified Communications Manager Traces for TelePresence support

This video explains how to configure and capture traces from the Cisco CallManager server for Cisco Technical Support. When you call Cisco Technical Support, you can be asked by the TelePresence Support engineer to capture these traces in order to troubleshoot the problem.
We have the previous document but for TelePresence you may want to add specific options.

http://www.cisco.com/en/US/products/sw/voicesw/ps556/products_tech_note09186a0080094e89.shtml

Check Video here:

Sunday, May 2, 2010

CTS System - Basic IP SLA configuration

The following commands provides basic configuration to enable IP SLA in CTS system

  • CTS System (172.16.181.57)
Couple of gotchas with Cisco TAC customers:
a) Starting 1.5 we include support and we need to configure in IP SLA responder port 32770 or above.
b) Configuring correct group schedule.

admin:utils ipsla responder enable
Starting IPSLA responder using port range 32770 - 33000...

utils ipsla responder initiators add net 172.16.154.0/24

  • IP SLA Router (172.16.154.1)

ip sla monitor 1
 type jitter dest-ipaddr 172.16.181.57 dest-port 32800 num-packets 1500 interval 30
 request-data-size 256
 tos 136
 owner gonzalo
 tag TelePresence_small


ip sla monitor 2
 type jitter dest-ipaddr 172.16.181.57 dest-port 32801 num-packets 3000 interval 15
 request-data-size 960
 tos 136
 owner gonzalo
 tag TelePresence_medium


ip sla monitor 3
 type jitter dest-ipaddr 172.16.181.57 dest-port 32802 num-packets 5625 interval 8
 request-data-size 1400
 tos 136
 owner gonzalo
 tag TelePresence_large


ip sla monitor 4
 type jitter dest-ipaddr 172.16.181.57 dest-port 32803 num-packets 1000
 request-data-size 200
 tos 136
 owner gonzalo
 tag TelePresence_audio


ip sla monitor  10
 type jitter dest-ipaddr 172.16.181.57 dest-port 32804 num-packets 1000
 request-data-size 200
 tos 184
 owner gonzalo
 tag voice-only-calls

ip sla group schedule 1 10,1-4 schedule-period 1 frequency 60 start-time now age forever

Saturday, May 1, 2010

CTS System - Basic Linux Tools - Part I

  • Basic checks:
When troubleshooting CTS performance, Linux embedded OS provide a powerful set of tools which will help you to verify system resources utilization:
This guide provides a basic list of tools which will help you troubleshoot your CTS system.
Some of the commands described in our Administration guide provide the same functionality, as they just invoke in the backend the same Linux commands:

http://www.cisco.com/en/US/partner/docs/telepresence/cts_admin/1_6/CLI/cts1_6cli.html

  • System status

date
uptime
CTS:>cat /proc/version
Linux version 2.6.11 (root@TSBU-ENG2.CISCO.COM) (gcc version 3.4.3) #1 Tue Feb 24 03:59:58 UTC 2009

http://www.unixguide.net/linux/linuxshortcuts.shtml


In Linux, a variety of log files are maintained. And its understanding is often vital for troubleshooting system problems. The centralized logging is provided by two daemons :

    * syslogd
    * klogd

For example, running the 'ps' command on my system gives the following output ...

CTS:>ps aux|grep [sk]*logd
  400 root        748 S   /usr/sbin/syslogd
  405 root        524 S   /usr/sbin/klogd
 2271 root        468 S   /usr/local/bin/clogd

The log files generated by these daemons as well as the log files generated by the applications like apache, squid etc are stored under the /var/log directory

  • Memory:
http://mail.nl.linux.org/linux-mm/2003-03/msg00077.html

Running Process:
    ps

    CTS:>ps --help
    BusyBox v1.00-pre8 (2009.02.24-04:32+0000) multi-call binary

    Usage: ps
    Report process status

    This version of ps in CTS accepts no option.
    We can use grep to track specific processes

    CTS:>ps | grep snmpd
     3499 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     3517 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     3518 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     3527 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     3528 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     3529 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     3530 root       6824 S   snmpd -LS e d -LF n /var/log/snmpdlogPipe -p /var/run
     2851 root        576 S < grep snmpd

    cat /proc/$pid/status

    Check free Memory:

    CTS:>free
                  total         used         free       shared      buffers
      Mem:       516180       494196        21984            0       392900
     Swap:            0            0            0
    Total:       516180       494196        21984

    CTS:>top
    Mem: 494260K used, 21920K free, 0K shrd, 392900K buff, 38816K cached
    Load average: 0.02, 0.16, 0.20    (State: S=sleeping R=running, W=waiting)

      PID USER     STATUS   RSS  PPID %CPU %MEM COMMAND
     4312 root     R <      736 14281  1.9  0.1 top
      678 root     S        28M   208  0.0  5.7 tsLogger
      550 root     S        28M   208  0.0  5.7 tsLogger
      205 root     S        28M     1  0.0  5.7 tsLogger
      298 root     S        28M   208  0.0  5.7 tsLogger
      555 root     S        28M   208  0.0  5.7 tsLogger
      578 root     S        28M   208  0.0  5.7 tsLogger
      212 root     S        28M   208  0.0  5.7 tsLogger
      210 root     S        28M   208  0.0  5.7 tsLogger
      299 root     S        28M   208  0.0  5.7 tsLogger
     1102 root     S        28M   208  0.0  5.7 tsLogger
      446 root     S        28M   208  0.0  5.7 tsLogger
      532 root     S        28M   208  0.0  5.7 tsLogger
      449 root     S        28M   208  0.0  5.7 tsLogger
      209 root     S        28M   208  0.0  5.7 tsLogger
      602 root     S        28M   208  0.0  5.7 tsLogger
      208 root     S        28M   205  0.0  5.7 tsLogger
      447 root     S        28M   208  0.0  5.7 tsLogger
      211 root     S        28M   208  0.0  5.7 tsLogger

    pidof
    ps | awk '{print $4"\t"$11}' | sort | uniq -c | awk '{print $2" "$1" "$3}' | sort -nr
     

    S=sleeping R=running, W=waiting)

    • Storage 
    CTS:>fdisk -l
      Disk /dev/hda: 256 MB, 256901120 bytes
      16 heads, 32 sectors/track, 980 cylinders
      Units = cylinders of 512 * 512 = 262144 bytes

         Device Boot    Start       End    Blocks   Id  System
      /dev/hda1               1           9        2288   83  Linux
      /dev/hda2              10         193       47104   83  Linux
      /dev/hda3             194         980      201472    5  Extended
      /dev/hda5             194         377       47088   83  Linux
      /dev/hda6             378         561       47088   83  Linux
      /dev/hda7             562         980      107248   83  Linux

      CTS:>df -h
      Filesystem            Size  Used Avail Use% Mounted on
      rootfs                248M  148M  100M  60% /
      /dev/root             248M  148M  100M  60% /
      /dev/hda7             101M   28M   68M  29% /nv

      CTS:>pwd

      CTS:>du --max-depth=1 -h
      du: ./sys/devices/pci0001:01/0001:01:00.0/resource1: Value too large for defined data type
      0       ./sys
      5.8M    ./bin
      1.0k    ./boot
      17k     ./dev
      259k    ./etc
      1.0k    ./home
      36M     ./lib
      9.0k    ./mnt
      du: cannot change to directory ./proc/1118/task: No such file or directory
      du: cannot change to directory ./proc/1118/fd: No such file or directory
      du: ./proc/1119/task/1119/fd/4: No such file or directory
      du: ./proc/1119/fd/4: No such file or directory
      9.7M    ./proc
      11k     ./root
      3.6M    ./sbin
      439k    ./tmp
      79M     ./usr
      20M     ./var
      0       ./debug
      28M     ./nv
      5.0k    ./nv-cache
      3.0k    ./snmp
      184M    .
      • Processor | CPU
      cat /proc/cpuinfo
      • Network
      This command will help you displaying the association for active network connections and its corresponding executable file

      netstat -anp
      • CTS specific tools:
      runtbdiag -n (--- DONT RUN when there is AN ACTIVE CALL ---)
      tbdiag

      When CTS logs are not available to retrieve and we need to find specific patterns before we can afford a reboot grep becomes a useful tool
      For example we want to find exception in CLI commands executed from regular CLI access
      CTS:>pwd
      /nv/log/cli

      grep -i -n 'cmdGeneralIOExec: myCmd.destroy exception' /nv/log/cli/*
      /nv/log/cli/cli00000.log:34:2010-02-10 23:36:58,579 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:42:2010-02-12 11:29:27,116 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:58:2010-02-12 11:29:35,711 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:75:2010-02-12 11:29:41,111 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:93:2010-02-12 11:29:45,653 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:109:2010-02-12 11:30:44,192 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:125:2010-02-12 11:30:49,098 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:146:2010-02-12 11:31:02,991 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:163:2010-02-12 11:31:11,710 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:184:2010-02-12 11:36:21,453 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:205:2010-02-12 11:36:33,361 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:225:2010-02-12 11:37:04,425 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:245:2010-02-12 11:37:26,638 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:264:2010-02-12 11:38:36,594 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:280:2010-02-12 11:38:58,656 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:298:2010-02-12 11:39:22,262 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception
      /nv/log/cli/cli00001.log:318:2010-02-12 11:39:54,417 DEBUG [main] - cmdGeneralIOExec: myCmd.destroy exception

      Please check

      http://mytelepresence.blogspot.com/2010/04/telepresence-system-collect-logs-when.html

      for more information in how to collect logs when GUI is not available

      CTS Manager - Understanding EWS Integration

      Starting CTS Manager version 1.6, Cisco CTS-Man Integrated with Exchange 2007 is supported with WebDAV and EWS.

      Exchange Web Services (EWS) provides the functionality to enable client applications to communicate with the Exchange server. EWS provides access to much of the same data that is made available through Microsoft Office Outlook. EWS clients can integrate Outlook data into Line-of-Business (LOB) applications. SOAP provides the messaging framework for messages sent between the client application and the Exchange server. The SOAP messages are sent by HTTP.
      EWS is described by three files:
      • Services.wsdl   Describes the contract between client and server.
      • Messages.xsd   Defines the request and response SOAP messages.
      • Types.xsd   Defines the elements used in the SOAP messages.
      These schema files are located in the IIS virtual directory that hosts Exchange Web Services of the computer that is running Microsoft Exchange Server that has the Client Access server role installed.
      Exchange Web Services Features

      For more information refer to:

      TelePresence CTMS - Gathering MCU/EMP traces

      1. Setup problem scenario
      2. Start a CRT or Hyperterm telnet session into the MCU and one into the EMP.
      3. Ready the terminal sessions for log captures.
      4. Log into MCU web GUI interface.
      5. Set Notify level to Debug 3 (Settings>>>Advanced>>>Commands)
      6. Depending the problem we can enable:
                
            - H.323 show stack
            - SCCP show stack
            - SIP show stack
                
      7. Start log captures for the MCU and EMP
      Begin problem scenario. *IMPORTANT* note endpoint extensions and the order which they where called.
      8. End call after all endpoints have joined the conference and problem has been duplicated.
      9. Stop log captures and save to desktop or folder labeling each.
      10. Repeat steps 1 - 4