· 8 years ago · Feb 02, 2017, 12:44 PM
1ssh://root@194.226.215.79:22/opt/noc/bin/python2 -u /opt/noc/commands/script.py --debug --pretty get_version apc-UPS-7.35
22017-02-02 15:37:06,917 [root] Loading PeriodicRegistry
32017-02-02 15:37:07,016 [noc.lib.nosql] Connecting to MongoDB {'username': 'noc', 'authentication_source': 'noc', 'replicaSet': 'noc', 'db': 'noc', 'socketKeepAlive': True, 'host': 'mongodb://noc:noc@194.226.215.79:27017/noc', 'password': '********', 'slave_okay': True}
42017-02-02 15:37:07,044 [noc.core.cache.base] Using cache backend: noc.core.cache.mongo.MongoCache
52017-02-02 15:37:07,074 [noc.main.models.doccategory] Registering Capability
62017-02-02 15:37:07,074 [noc.main.models.doccategory] Registering MetricType
72017-02-02 15:37:07,395 [noc.main.models.doccategory] Registering ConnectionType
82017-02-02 15:37:07,399 [noc.main.models.doccategory] Registering ObjectModel
92017-02-02 15:37:07,415 [noc.main.models.textindex] Adding FTS index for sa.managedobject
102017-02-02 15:37:07,451 [noc.main.models.textindex] Adding FTS index for ip.vrf
112017-02-02 15:37:07,459 [noc.main.models.textindex] Adding FTS index for vc.vc
122017-02-02 15:37:07,465 [noc.main.models.textindex] Adding FTS index for ip.prefix
132017-02-02 15:37:07,467 [noc.main.models.textindex] Adding FTS index for ip.address
142017-02-02 15:37:07,507 [noc.core.script.loader] Loading script APC.AOS.get_version
152017-02-02 15:37:07,521 [noc.core.profile.loader] Loading profile APC.AOS
162017-02-02 15:37:07,522 [script] [APC.AOS.get_version|10.129.7.35] Running. Input arguments: {}, timeout 3600
172017-02-02 15:37:07,522 [script] [APC.AOS.get_version|10.129.7.35] Open telnet CLI
182017-02-02 15:37:07,537 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Creating IOLoop
192017-02-02 15:37:07,538 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Connecting (u'10.129.7.35', 23)
202017-02-02 15:37:07,541 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Connected
212017-02-02 15:37:07,541 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <START>
222017-02-02 15:37:07,541 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Setting timeout: 60s
232017-02-02 15:37:07,544 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received WILL ECHO
242017-02-02 15:37:07,544 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send DO ECHO
252017-02-02 15:37:07,547 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nUser Name : '
262017-02-02 15:37:07,547 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^User Name\s+:
272017-02-02 15:37:07,547 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <USERNAME>
282017-02-02 15:37:07,547 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send: 'apc\r\n'
292017-02-02 15:37:07,547 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Setting timeout: 30s
302017-02-02 15:37:07,589 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received WILL ECHO
312017-02-02 15:37:07,589 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send DO ECHO
322017-02-02 15:37:07,591 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'a'
332017-02-02 15:37:07,592 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'p'
342017-02-02 15:37:07,593 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'c'
352017-02-02 15:37:07,595 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nPassword : '
362017-02-02 15:37:07,595 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^Password\s+:
372017-02-02 15:37:07,596 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <PASSWORD>
382017-02-02 15:37:07,596 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send: 'apc\r\n'
392017-02-02 15:37:07,596 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Setting timeout: 30s
402017-02-02 15:37:07,599 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '*'
412017-02-02 15:37:07,599 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '*'
422017-02-02 15:37:07,599 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '*'
432017-02-02 15:37:07,718 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n\r\nAmerican Power Conversion Network Management Card AOS v5.'
442017-02-02 15:37:07,718 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '1.7\r\n'
452017-02-02 15:37:07,721 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '(c) Copyright 2010 All Rights Reserved '
462017-02-02 15:37:07,724 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Symmetra APP v5.1.7\r\n---------------------------------------'
472017-02-02 15:37:07,726 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '----------------------------------------\r\n'
482017-02-02 15:37:07,730 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name : UPS-7.35 Date : 02/02/2017\r\n'
492017-02-02 15:37:07,733 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Contact : ncc@informika.ru Time : 15:40:43\n\r'
502017-02-02 15:37:07,737 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Location : Tverskaya 11 str 1 User : Administrator\n\r'
512017-02-02 15:37:07,740 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Up Time : 8 Days 7 Hours 7 Minutes Stat : P+ N4+ N6+ A+\r\n\r\n'
522017-02-02 15:37:07,741 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nType ? for command listing'
532017-02-02 15:37:07,757 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nUse tcpip command for IP address(-i), subnet(-s), and gateway(-g)\r\n\r\n'
542017-02-02 15:37:07,759 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'apc>'
552017-02-02 15:37:07,759 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^(\S+)?>
562017-02-02 15:37:07,759 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <PROMT>
572017-02-02 15:37:07,760 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Resetting timeouts
582017-02-02 15:37:07,760 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send: 'about\r\n'
592017-02-02 15:37:07,764 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'a'
602017-02-02 15:37:07,764 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'b'
612017-02-02 15:37:07,765 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'o'
622017-02-02 15:37:07,766 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'u'
632017-02-02 15:37:07,767 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 't'
642017-02-02 15:37:07,768 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
652017-02-02 15:37:07,771 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'E000: Success\r\n'
662017-02-02 15:37:07,771 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Hardware Factory\r\n'
672017-02-02 15:37:07,777 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
682017-02-02 15:37:07,778 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Model Number: \t\tAP9631\r\n'
692017-02-02 15:37:07,780 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Serial Number: \t\t5A1225T16526\r\n'
702017-02-02 15:37:07,780 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Hardware Revision: \t05\r\n'
712017-02-02 15:37:07,783 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Manufacture Date: \t06/24/2012\r\n'
722017-02-02 15:37:07,784 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'MAC Address: \t\t00 C0 B7 9B EC CA\r\n'
732017-02-02 15:37:07,786 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Management Uptime: \t8 Days 7 Hours 7 Minutes\r\n'
742017-02-02 15:37:07,787 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
752017-02-02 15:37:07,787 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Application Module\r\n'
762017-02-02 15:37:07,789 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
772017-02-02 15:37:07,794 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name: \t\t\tsy\r\n'
782017-02-02 15:37:07,795 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Version: \t\tv5.1.7\r\n'
792017-02-02 15:37:07,796 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Date: \t\t\tDec 1 2011\r\n'
802017-02-02 15:37:07,797 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Time: \t\t\t13:10:10\r\n'
812017-02-02 15:37:07,798 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
822017-02-02 15:37:07,800 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'APC OS(AOS)\r\n---------------\r\n'
832017-02-02 15:37:07,805 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name: \t\t\taos\r\n'
842017-02-02 15:37:07,806 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Version: \t\tv5.1.7\r\n'
852017-02-02 15:37:07,806 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Date: \t\t\tNov 22 2011\r\n'
862017-02-02 15:37:07,808 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Time: \t\t\t09:53:57\r\n'
872017-02-02 15:37:07,808 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
882017-02-02 15:37:07,810 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'APC Boot Monitor\r\n'
892017-02-02 15:37:07,810 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
902017-02-02 15:37:07,815 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name: \t\t\tbootmon\r\n'
912017-02-02 15:37:07,817 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Version: \t\tv1.0.2\r\n'
922017-02-02 15:37:07,818 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Date: \t\t\tJan 21 2010\r\n'
932017-02-02 15:37:07,819 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Time: \t\t\t13:35:57\r\n'
942017-02-02 15:37:07,820 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
952017-02-02 15:37:07,821 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'apc>'
962017-02-02 15:37:07,821 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^(\S+)?>
972017-02-02 15:37:07,821 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <PROMT>
982017-02-02 15:37:07,821 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Command: about
99about
100E000: Success
101Hardware Factory
102---------------
103Model Number: AP9631
104Serial Number: 5A1225T16526
105Hardware Revision: 05
106Manufacture Date: 06/24/2012
107MAC Address: 00 C0 B7 9B EC CA
108Management Uptime: 8 Days 7 Hours 7 Minutes
109
110Application Module
111---------------
112Name: sy
113Version: v5.1.7
114Date: Dec 1 2011
115Time: 13:10:10
116
117APC OS(AOS)
118---------------
119Name: aos
120Version: v5.1.7
121Date: Nov 22 2011
122Time: 09:53:57
123
124APC Boot Monitor
125---------------
126Name: bootmon
127Version: v1.0.2
128Date: Jan 21 2010
129Time: 13:35:57
130
131
1322017-02-02 15:37:07,822 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Closing IOLoop
1332017-02-02 15:37:07,885 [noc.lib.debug] UNHANDLED EXCEPTION (2017-02-02 15:37:07.823355)
134BRANCH: feature/microservices TIP: f6f1ff339798
135PROCESS: /opt/noc/commands/script.py
136ERROR FINGERPRINT: 8f521bed-d587-57d6-a262-b22f20e266b1
137WORKING DIRECTORY: /opt/noc
138EXCEPTION: <class 'noc.core.script.base.UnexpectedResultError'>
139START OF TRACEBACK
140------------------------------------------------------------------------
141File: core/script/base.py (Line: 530)
142Function: re_search
143 523 Returns match object.
144 524 rx can be string or compiled regular expression
145 525 """
146 526 if isinstance(rx, basestring):
147 527 rx = re.compile(rx, flags)
148 528 match = rx.search(s)
149 529 if match is None:
150 530 ==> raise self.UnexpectedResultError()
151 531 return match
152 532
153 533 def re_match(self, rx, s, flags=0):
154 534 """
155 535 Match s against regular expression rx using re.match
156 536 Raise UnexpectedResultError if regular expression is not matched.
157Variables:
158 rx = <_sre.SRE_Pattern object at 0x3ee1040>
159 s =
160'E000: Success\nHardware Factory\n---------------\nModel Number: \t\tAP9631\nSerial Number: \t\t5A1225T16526\nHardware Revision: \t05\nManufacture Date: \t06/24/2012\nMAC Address: \t\t00 C0 B7 9B EC CA\nManagement Uptime: \t8 Days 7 Hours 7 Minutes\n\nApplication Module\n---------------\nName: \t\t\tsy\nVersion: \t\tv5.1.7\nDate: \t\t\tDec 1 2011\nTime: \t\t\t13:10:10\n\nAPC OS(AOS)\n---------------\nName: \t\t\taos\nVersion: \t\tv5.1.7\nDate: \t\t\tNov 22 2011\nTime: \t\t\t09:53:57\n\nAPC Boot Monitor\n---------------\nName: \t\t\tbootmon\nVersion: \t\tv1.0.2\nDate: \t\t\tJan 21 2010\nTime: \t\t\t13:35:57\n\n'
161 flags = 0
162 self = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3e79590>
163 match = None
164------------------------------------------------------------------------
165File: sa/profiles/APC/AOS/get_version.py (Line: 33)
166Function: execute
167 26 rx_serial = re.compile(r"^\s*Serial Number:\s+(?P<serial>\S+)\s*\n", re.MULTILINE)
168 27 ## platform = "Unknown"
169 28
170 29 def execute(self):
171 30 m = self.motd
172 31 if not m:
173 32 ver = self.cli("about", cached=True)
174 33 ==> vmatch = self.re_search(self.rx_fwver, ver)
175 34 smatch = self.re_search(self.rx_serial, ver)
176 35 match = self.re_search(self.rx_platform, ver)
177 36 if not match:
178 37 match = self.re_search(self.rx_platform1, ver)
179 38 return {
180 39 "vendor": "APC",
181Variables:
182 m = ''
183 self = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3e79590>
184 ver =
185'E000: Success\nHardware Factory\n---------------\nModel Number: \t\tAP9631\nSerial Number: \t\t5A1225T16526\nHardware Revision: \t05\nManufacture Date: \t06/24/2012\nMAC Address: \t\t00 C0 B7 9B EC CA\nManagement Uptime: \t8 Days 7 Hours 7 Minutes\n\nApplication Module\n---------------\nName: \t\t\tsy\nVersion: \t\tv5.1.7\nDate: \t\t\tDec 1 2011\nTime: \t\t\t13:10:10\n\nAPC OS(AOS)\n---------------\nName: \t\t\taos\nVersion: \t\tv5.1.7\nDate: \t\t\tNov 22 2011\nTime: \t\t\t09:53:57\n\nAPC Boot Monitor\n---------------\nName: \t\t\tbootmon\nVersion: \t\tv1.0.2\nDate: \t\t\tJan 21 2010\nTime: \t\t\t13:35:57\n\n'
186------------------------------------------------------------------------
187File: core/script/base.py (Line: 213)
188Function: run
189 206 self.logger.info("Using cached result")
190 207 cache_hit = True
191 208 except KeyError:
192 209 pass
193 210 # Execute script
194 211 if not cache_hit:
195 212 try:
196 213 ==> result = self.execute(**self.args)
197 214 if self.cache and self.parent and result:
198 215 self.logger.info("Caching result")
199 216 self.set_cache(self.name, self.args, result)
200 217 finally:
201 218 if not self.parent:
202 219 # Close SNMP socket when necessary
203Variables:
204 cache_hit = False
205 self = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3e79590>
206------------------------------------------------------------------------
207File: commands/script.py (Line: 119)
208Function: handle
209 112 capabilities=caps,
210 113 args=args,
211 114 version=version,
212 115 timeout=3600,
213 116 name=script,
214 117 collect_beef=bool(beef)
215 118 )
216 119 ==> result = scr.run()
217 120 if pretty:
218 121 pprint.pprint(result)
219 122 elif yaml:
220 123 import yaml
221 124 import sys
222 125 yaml.dump(result, sys.stdout)
223Variables:
224 obj = <ManagedObject: apc-UPS-7.35>
225 beef = None
226 service = <__main__.ServiceStub object at 0x3e79650>
227 script = u'APC.AOS.get_version'
228 script_class = <class 'noc.sa.profiles.APC.AOS.get_version.Script'>
229 self = <__main__.Command object at 0x277ea90>
230 args = {}
231 use_snmp = True
232 caps = {}
233 yaml = False
234 object_name = ['apc-UPS-7.35']
235 version = None
236 arguments = []
237 pretty = True
238 v = Version(profile=u'APC.AOS', vendor=None, platform=None, version=None)
239 credentials =
240{'address': u'10.129.7.35',
241 'cli_protocol': 'telnet',
242 'password': u'apc',
243 'path': None,
244 'snmp_ro': u'kQHDtBgU73mW',
245 'snmp_version': 'v2c',
246 'super_password': u'apc',
247 'user': u'apc'}
248 config = 'etc/noc.yml'
249 options = {}
250 scr = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3e79590>
251------------------------------------------------------------------------
252File: core/management/base.py (Line: 55)
253Function: run_from_argv
254 48 options = parser.parse_args(argv)
255 49 cmd_options = vars(options)
256 50 args = cmd_options.pop("args", ())
257 51 loglevel = cmd_options.pop("loglevel")
258 52 if loglevel:
259 53 self.setup_logging(loglevel)
260 54 try:
261 55 ==> return self.handle(*args, **cmd_options) or 0
262 56 except CommandError, why:
263 57 self.stderr.write(str(why))
264 58 self.stderr.write("\n")
265 59 self.stderr.flush()
266 60 return 1
267 61 except Exception:
268Variables:
269 args = ()
270 loglevel = 'debug'
271 self = <__main__.Command object at 0x277ea90>
272 parser =
273ArgumentParser(prog='script.py', usage=None, description=None, version=None, formatter_class=<class 'argparse.HelpFormatter'>, conflict_handler='error', add_help=True)
274 cmd_options =
275{'arguments': [],
276 'beef': None,
277 'config': 'etc/noc.yml',
278 'object_name': ['apc-UPS-7.35'],
279 'pretty': True,
280 'script': ['get_version'],
281 'use_snmp': True,
282 'yaml': False}
283 argv = ['--debug', '--pretty', 'get_version', 'apc-UPS-7.35']
284 options =
285Namespace(arguments=[], beef=None, config='etc/noc.yml', object_name=['apc-UPS-7.35'], pretty=True, script=['get_version'], use_snmp=True, yaml=False)
286------------------------------------------------------------------------
287END OF TRACEBACK
2882017-02-02 15:37:07,888 [noc.lib.debug] Writing CP report to var/cp/crashinfo/new/8f521bed-d587-57d6-a262-b22f20e266b1.json
289
290Process finished with exit code 2