Skip to main content

Cyware Situational Awareness Platform

Troubleshooting

This topic provides some basic commands that are useful for troubleshooting issues during and after the deployment:

Manage Docker Swarm

Following are some basic Docker Swarm commands that are useful for troubleshooting issues:

  • To check the Docker Swarm Node status, run the following command. This command lists all the nodes of the Docker Swarm Manager.

    docker node ls

    Sample Output

    ID                           HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
    41bcef6utixb0l0ca7gxuivsj0    swarm-worker2   Ready   Active
    538ciaotwjuritcdtn9npbnkuz    swarm-worker1   Ready   Active
    6e216jshn25ckzbvmwlnh5jr3g *  swarm-manager1  Ready   Active        Leader

    Note

    The status for each node should be Ready. If the above command times out or throws any error, then you must set up the swarm cluster again.

  • To list all Docker services, run the following command. This command lists services running in the swarm. The REPLICAS column shows both the actual and desired number of tasks for the service. If the service is in replicated-job or global-job, it will additionally show the completion status of the job as completed tasks over the total tasks the job will execute.

    docker service ls

    Sample Output

    ID            NAME      MODE            REPLICAS             IMAGE
    4c8wgl7q4ndfd  frontend  replicated      5/5                  nginx:alpine
    5dmu1ept4cxcf  redis     replicated      3/3                  redis:3.0.6
    6hh08h9uu8uwr  job       replicated-job  1/1 (3/5 completed)  nginx:late
  • To check if containers are up and running, run the following command:

    docker ps
  • If the actual and desired number of replicas for a service is not the same, run the following command to check for the cause:

    docker service ps --no-trunc <service-name>
  • To check the Docker Overlay Network info, run the following command:

    docker network ls
  • To check if the Docker systemd service is running, run the following command:

    systemctl status docker
  • To check the Docker systemd logs, run the following command:

    journalctl -u -f docker.service
  • To view Docker service-wise stats on the current server, run the following command:

    docker stats
  • To restart the Docker service on the server, run the following command. This command restarts all services that run as Docker containers.

    sudo systemctl restart docker

    Note

    You must manually restart the services that do not run as Docker containers.

  • To update a service, run the following command:

    docker service update <service_name> --force
  • To delete a stack, run the following command:

    docker stack rm <stack_name>
  • To go inside the containers, run the following command:

    docker exec -it $(docker ls -q- -f name=<service_name>) bash
  • To go inside a specific container, run the following command:

    docker exec -it <container_id> bash
  • To redeploy a stack, run the following command:

    docker stack deploy -c <compose-file-name> <stack_name>
View Application Logs

Following are some commands to view the application logs of various Collaborate services:

  • To view the backend application logs, run the following command:

    cd /apps/cyware/logs/csap
    tail -f <logfile.name> 
  • To view the Celery beat logs, run the following command:

    cd /apps/cyware/logs/celery-beat
    tail -f <logfile.name>
  • To view the Celery notification logs, run the following command:

    cd /apps/cyware/logs/celery-notification
    tail -f <logfile.name>
  • To view the Celery worker logs, run the following command:

    cd /apps/cyware/logs/celery-worker
    tail -f <logfile.name>
  • To view the member portal logs, run the following command:

    cd /apps/cyware/logs/webapp
    tail -f <logfile.name>
  • To view the admin portal logs, run the following command:

    cd /apps/cyware/logs/dashboard
    tail -f <logfile.name>
View Datastore Logs (Docker Version)

Following are some commands to view the logs of the database services that are deployed as Docker containers.

  • To view the PostgreSQL logs, run the following command:

    docker service logs -f db_postgres
  • To view the Redis logs, run the following command:

    docker service logs -f db_redis
  • To view the Object Storage logs, run the following command:

    docker service logs -f db_object_storage
View Datastore Logs (Systemd Version)

Following are some commands to view the logs of the database services that are not deployed as Docker containers.

  • To view the PostgreSQL logs, run the following command:

    tail -f /var/log/postgres/postgres.log
  • To view the Redis logs, run the following command:

    tail -f /var/log/redis/*.log
Check Network Connectivity

Following are some commands to check the network connectivity.

  • To check the connectivity on a TCP port, run the following command:

    telnet <HOSTNAME/IP> <PORT>
  • To check the connectivity on a UDP port, run the following command:

    nc -vz -u <HOSTNAME/IP> <PORT>
Manage Proxy Settings

Following are some commands to manage proxy settings.

  • To view the current proxy settings, run the following command:

    printenv|grep proxy
  • To add proxy settings to the current session, run the following command:

    export http_proxy=<PROXY>
    export https_proxy=<PROXY>
    export no_proxy=<IPs,HOSTNAMES>
  • To add proxy settings for a user, open the ~/.bashrc file and add the following lines:

    export http_proxy=<PROXY>
    export https_proxy=<PROXY>
    export no_proxy=<IPs,HOSTNAMES>

    Note

    You must sign in again to apply the proxy settings.

  • To add global proxy settings, open the /etc/environment file and add the following lines:

    http_proxy=<PROXY>
    https_proxy=<PROXY>
    no_proxy=<IPs,HOSTNAMES>
  • To add proxy settings for the Docker systemd service, open the /usr/lib/systemd/system/docker.service file and add the following lines:

    [Service]
    Environment="HTTP_PROXY=<PROXY>"
    Environment="HTTPS_PROXY=<PROXY>"

    You must restart Docker to apply the proxy settings. To restart the Docker services, run the following command:

    systemctl restart docker
General Troubleshooting Commands

Following are some commands to view the system uptime and system-level logs.

  • To view the uptime of the system, run the following command:

    uptime

    Sample Output

    9:49  up 3 days, 18:56, 2 users, load averages: 2.34 2.97 4.65
  • To view the system-level logs for reboot and more, run the following command:

    tail -f /var/log/messages
View Nginx Logs

If Nginx is installed, run the following command to view the Nginx reverse proxy logs -

tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log