blob: f366685bcaa25eef60362127514d841bba452621 [file] [log] [blame]
garciadeblas15fd2002018-11-07 02:02:45 +01001#!/bin/bash
2
3# OSM devops/tools - Tool that generates a report for debugging
4#
5# Copyright 2018 Telefonica
6#
7# Licensed under the Apache License, Version 2.0 (the "License");
8# you may not use this file except in compliance with the License.
9# You may obtain a copy of the License at
10#
11# http://www.apache.org/licenses/LICENSE-2.0
12#
13# Unless required by applicable law or agreed to in writing, software
14# distributed under the License is distributed on an "AS IS" BASIS,
15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16# See the License for the specific language governing permissions and
17# limitations under the License.
18
19DIRNAME=$(readlink -f ${BASH_SOURCE[0]})
20DIRNAME=$(dirname $DIRNAME)
21
22#Get versions
23echo "-------------------------------"
24echo "Versions"
25echo "-------------------------------"
26echo "DIRNAME: $DIRNAME"
27echo "docker version:"
28docker version
29echo "lxd version:"
30lxd --version
31echo "juju version:"
32juju --version
33echo "osm-devops deb package:"
34dpkg -l |grep osm-devops
35echo "osm-imdocs deb package:"
36dpkg -l |grep osm-imdocs
37echo "python-osmclient deb package:"
38dpkg -l |grep
39echo "whereis osm:"
40whereis osm
41echo "which osmclient:"
42which osm
43#dockers deb packages
44echo "dockers deb packages"
Benjamin Diaz6e3a2b62019-02-22 16:04:34 -030045for i in kafka keystone lcm light-ui mon mongo nbi pol prometheus ro mysql zookeeper; do
garciadeblas15fd2002018-11-07 02:02:45 +010046 echo "docker osm_$i"
47 docker exec $(docker ps -q -f name=osm_$i -l) dpkg -l |grep osm
48done
49#dockers source code
50echo "dockers deb packages"
51echo "docker osm_ro"
52docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO rev-parse HEAD
53docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO describe --tags --long --dirty
54echo "docker osm_lcm"
55docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app rev-parse HEAD
56docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app describe --tags --long --dirty
57echo "docker osm_nbi"
58docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI rev-parse HEAD
59docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI describe --tags --long --dirty
60echo "docker osm_light-ui"
61docker exec $(docker ps -q -f name=osm_light-ui -l) git -C /usr/share/osm-lightui rev-parse HEAD
62docker exec $(docker ps -q -f name=osm_light-ui -l) git -C /usr/share/osm-lightui describe --tags --long --dirty
63echo "docker osm_mon"
64docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon rev-parse HEAD
65docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon describe --tags --long --dirty
66echo "docker osm_pol"
67docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module rev-parse HEAD
68docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module describe --tags --long --dirty
69
70#Get configuration files
71echo "-------------------------------"
72echo "Configuration files"
73echo "-------------------------------"
74for i in $(find /etc/osm -type f -exec echo {} \;); do
75 [ -f "$i" ] || continue
76 echo "File $i:"
77 cat $i
78done
79
80#Get status of docker swarm
81echo "-------------------------------"
82echo "Docker swarm status"
83echo "-------------------------------"
84echo "Node ls:"
85docker node ls
86echo "Node inspect self:"
87docker node inspect self --pretty
88echo "Network inspect docker_gwbridge:"
89docker network inspect docker_gwbridge
90echo "Network inspect netOSM:"
91docker network inspect netOSM
92echo "Network inspect netosm:"
93docker network inspect netosm
94
95#Get status of dockers
96echo "-------------------------------"
97echo "Docker status"
98echo "-------------------------------"
99echo "-------------------------------"
100echo "Docker stack ls"
101echo "-------------------------------"
102docker stack ls
103echo "-------------------------------"
104echo "Docker service ls"
105echo "-------------------------------"
106docker service ls
107for i in $(docker stack ps |tail -n +2|awk '{print $1}'); do
108 echo "-------------------------------"
109 echo "Docker stack $i"
110 echo "-------------------------------"
111 docker stack ps $i
112done
113
114#Get log files
115echo
116echo "-------------------------------"
117echo "Log files"
118echo "-------------------------------"
119echo "To be added"
120
121#Get OSM general info
122echo "-------------------------------"
123echo "OSM info"
124echo "-------------------------------"
125for i in vim-list sdnc-list vnfd-list nsd-list ns-list vnf-list; do
126 echo "-------------------------------"
127 echo "OSM info: $i"
128 echo "-------------------------------"
129 osm $i
130done
131
132#Get OSM details
133echo "-------------------------------"
134echo "OSM details"
135echo "-------------------------------"
136for i in vim sdnc vnfd nsd ns; do
137 echo "-------------------------------"
138 echo "OSM details: $i"
139 echo "-------------------------------"
140 for j in $(osm $i-list|tail -n +4|awk '{print $4}'); do
141 echo "-------------------------------"
142 echo "OSM details: vim $j"
143 echo "-------------------------------"
144 osm $i-show $j
145 done
146done
147for i in vnf; do
148 echo "-------------------------------"
149 echo "OSM details: $i"
150 echo "-------------------------------"
151 for j in $(osm $i-list|tail -n +4|awk '{print $2}'); do
152 echo "-------------------------------"
153 echo "OSM details: vim $j"
154 echo "-------------------------------"
155 osm $i-show $j
156 done
157done
158