3 # OSM devops/tools - Tool that generates a report for debugging
5 # Copyright 2018 Telefonica
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
11 # http://www.apache.org/licenses/LICENSE-2.0
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.
19 DIRNAME=$(readlink -f ${BASH_SOURCE[0]})
20 DIRNAME=$(dirname $DIRNAME)
23 echo "-------------------------------"
25 echo "-------------------------------"
26 echo "DIRNAME: $DIRNAME"
27 echo "docker version:"
33 echo "osm-devops deb package:"
34 dpkg -l |grep osm-devops
35 echo "osm-imdocs osm-im deb package:"
37 echo "python-osmclient deb package:"
41 echo "which osmclient:"
44 echo "dockers deb packages"
45 for i in kafka keystone lcm light-ui mon mongo nbi pol prometheus ro mysql zookeeper; do
47 docker exec $(docker ps -q -f name=osm_$i -l) dpkg -l |grep osm
50 echo "dockers deb packages"
52 docker exec -it $(docker ps -aqf "name=osm_mon" -n 1) dpkg -l |egrep -i "osm|n2vc"
54 docker exec -it $(docker ps -aqf "name=osm_pol" -n 1) dpkg -l |egrep -i "osm|n2vc"
56 docker exec -it $(docker ps -aqf "name=osm_lcm" -n 1) dpkg -l |egrep -i "osm|n2vc"
58 docker exec -it $(docker ps -aqf "name=osm_nbi" -n 1) dpkg -l |egrep -i "osm|n2vc"
60 docker exec -it $(docker ps -aqf "name=osm_light-ui" -n 1) dpkg -l |egrep -i "osm|n2vc"
62 docker exec -it $(docker ps -aqf "name=osm_ro.1" -n 1) dpkg -l |egrep -i "osm|n2vc"
64 dpkg -l |grep osmclient
68 dpkg -l |grep osm-devops
71 docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO rev-parse HEAD
72 docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO describe --tags --long --dirty
74 docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app rev-parse HEAD
75 docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app describe --tags --long --dirty
77 docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI rev-parse HEAD
78 docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI describe --tags --long --dirty
79 echo "docker osm_light-ui"
80 docker exec $(docker ps -q -f name=osm_light-ui -l) git -C /usr/share/osm-lightui rev-parse HEAD
81 docker exec $(docker ps -q -f name=osm_light-ui -l) git -C /usr/share/osm-lightui describe --tags --long --dirty
83 docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon rev-parse HEAD
84 docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon describe --tags --long --dirty
86 docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module rev-parse HEAD
87 docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module describe --tags --long --dirty
89 #Get configuration files
90 echo "-------------------------------"
91 echo "Configuration files"
92 echo "-------------------------------"
93 for i in $(find /etc/osm -type f -exec echo {} \;); do
94 [ -f "$i" ] || continue
99 #Get status of docker swarm
100 echo "-------------------------------"
101 echo "Docker swarm status"
102 echo "-------------------------------"
105 echo "Node inspect self:"
106 docker node inspect self --pretty
107 echo "Network inspect docker_gwbridge:"
108 docker network inspect docker_gwbridge
109 echo "Network inspect netOSM:"
110 docker network inspect netOSM
111 echo "Network inspect netosm:"
112 docker network inspect netosm
114 #Get status of dockers
115 echo "-------------------------------"
117 echo "-------------------------------"
118 echo "-------------------------------"
119 echo "Docker stack ls"
120 echo "-------------------------------"
122 echo "-------------------------------"
123 echo "Docker service ls"
124 echo "-------------------------------"
126 for i in $(docker stack ps |tail -n +2|awk '{print $1}'); do
127 echo "-------------------------------"
128 echo "Docker stack $i"
129 echo "-------------------------------"
135 echo "-------------------------------"
137 echo "-------------------------------"
140 #Get OSM general info
141 echo "-------------------------------"
143 echo "-------------------------------"
144 for i in vim-list sdnc-list vnfd-list nsd-list ns-list vnf-list; do
145 echo "-------------------------------"
147 echo "-------------------------------"
152 echo "-------------------------------"
154 echo "-------------------------------"
155 for i in vim sdnc vnfd nsd ns; do
156 echo "-------------------------------"
157 echo "OSM details: $i"
158 echo "-------------------------------"
159 for j in $(osm $i-list|tail -n +4|awk '{print $4}'); do
160 echo "-------------------------------"
161 echo "OSM details: vim $j"
162 echo "-------------------------------"
167 echo "-------------------------------"
168 echo "OSM details: $i"
169 echo "-------------------------------"
170 for j in $(osm $i-list|tail -n +4|awk '{print $2}'); do
171 echo "-------------------------------"
172 echo "OSM details: vim $j"
173 echo "-------------------------------"