blob: e18c4b003ce4e5acd3124bdc18a122dfcdd4814a [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
garciadeblas954f06f2019-06-27 16:44:18 +020035echo "osm-imdocs osm-im deb package:"
36dpkg -l |grep osm-im
garciadeblas15fd2002018-11-07 02:02:45 +010037echo "python-osmclient deb package:"
beierlmcca93642021-05-03 16:29:14 -040038dpkg -l |grep
garciadeblas15fd2002018-11-07 02:02:45 +010039echo "whereis osm:"
40whereis osm
41echo "which osmclient:"
42which osm
43#dockers deb packages
44echo "dockers deb packages"
beierlmcca93642021-05-03 16:29:14 -040045for i in kafka keystone lcm 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"
garciadeblas954f06f2019-06-27 16:44:18 +020051echo "MON"
52docker exec -it $(docker ps -aqf "name=osm_mon" -n 1) dpkg -l |egrep -i "osm|n2vc"
53echo "POL"
54docker exec -it $(docker ps -aqf "name=osm_pol" -n 1) dpkg -l |egrep -i "osm|n2vc"
55echo "LCM"
56docker exec -it $(docker ps -aqf "name=osm_lcm" -n 1) dpkg -l |egrep -i "osm|n2vc"
57echo "NBI"
58docker exec -it $(docker ps -aqf "name=osm_nbi" -n 1) dpkg -l |egrep -i "osm|n2vc"
garciadeblas954f06f2019-06-27 16:44:18 +020059echo "RO"
60docker exec -it $(docker ps -aqf "name=osm_ro.1" -n 1) dpkg -l |egrep -i "osm|n2vc"
61echo "OSMCLIENT"
62dpkg -l |grep osmclient
63echo "OSM-IM"
64dpkg -l |grep osm-im
65echo "OSM-DEVOPS"
66dpkg -l |grep osm-devops
67
garciadeblas15fd2002018-11-07 02:02:45 +010068echo "docker osm_ro"
69docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO rev-parse HEAD
70docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO describe --tags --long --dirty
71echo "docker osm_lcm"
72docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app rev-parse HEAD
73docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app describe --tags --long --dirty
74echo "docker osm_nbi"
75docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI rev-parse HEAD
76docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI describe --tags --long --dirty
garciadeblas15fd2002018-11-07 02:02:45 +010077echo "docker osm_mon"
78docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon rev-parse HEAD
79docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon describe --tags --long --dirty
80echo "docker osm_pol"
81docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module rev-parse HEAD
82docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module describe --tags --long --dirty
83
84#Get configuration files
85echo "-------------------------------"
86echo "Configuration files"
87echo "-------------------------------"
88for i in $(find /etc/osm -type f -exec echo {} \;); do
89 [ -f "$i" ] || continue
90 echo "File $i:"
91 cat $i
92done
93
94#Get status of docker swarm
95echo "-------------------------------"
96echo "Docker swarm status"
97echo "-------------------------------"
98echo "Node ls:"
99docker node ls
100echo "Node inspect self:"
101docker node inspect self --pretty
102echo "Network inspect docker_gwbridge:"
103docker network inspect docker_gwbridge
104echo "Network inspect netOSM:"
105docker network inspect netOSM
106echo "Network inspect netosm:"
107docker network inspect netosm
108
109#Get status of dockers
110echo "-------------------------------"
111echo "Docker status"
112echo "-------------------------------"
113echo "-------------------------------"
114echo "Docker stack ls"
115echo "-------------------------------"
116docker stack ls
117echo "-------------------------------"
118echo "Docker service ls"
119echo "-------------------------------"
120docker service ls
121for i in $(docker stack ps |tail -n +2|awk '{print $1}'); do
122 echo "-------------------------------"
123 echo "Docker stack $i"
124 echo "-------------------------------"
125 docker stack ps $i
126done
127
128#Get log files
129echo
130echo "-------------------------------"
131echo "Log files"
132echo "-------------------------------"
133echo "To be added"
134
135#Get OSM general info
136echo "-------------------------------"
137echo "OSM info"
138echo "-------------------------------"
139for i in vim-list sdnc-list vnfd-list nsd-list ns-list vnf-list; do
140 echo "-------------------------------"
141 echo "OSM info: $i"
142 echo "-------------------------------"
143 osm $i
144done
145
146#Get OSM details
147echo "-------------------------------"
148echo "OSM details"
149echo "-------------------------------"
150for i in vim sdnc vnfd nsd ns; do
151 echo "-------------------------------"
152 echo "OSM details: $i"
153 echo "-------------------------------"
154 for j in $(osm $i-list|tail -n +4|awk '{print $4}'); do
155 echo "-------------------------------"
156 echo "OSM details: vim $j"
157 echo "-------------------------------"
158 osm $i-show $j
159 done
160done
161for i in vnf; do
162 echo "-------------------------------"
163 echo "OSM details: $i"
164 echo "-------------------------------"
165 for j in $(osm $i-list|tail -n +4|awk '{print $2}'); do
166 echo "-------------------------------"
167 echo "OSM details: vim $j"
168 echo "-------------------------------"
169 osm $i-show $j
170 done
171done
172