· 8 years ago · Feb 02, 2017, 01:06 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:59:32,693 [root] Loading PeriodicRegistry
32017-02-02 15:59:32,786 [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:59:32,812 [noc.core.cache.base] Using cache backend: noc.core.cache.mongo.MongoCache
52017-02-02 15:59:32,843 [noc.main.models.doccategory] Registering Capability
62017-02-02 15:59:32,843 [noc.main.models.doccategory] Registering MetricType
72017-02-02 15:59:33,154 [noc.main.models.doccategory] Registering ConnectionType
82017-02-02 15:59:33,157 [noc.main.models.doccategory] Registering ObjectModel
92017-02-02 15:59:33,172 [noc.main.models.textindex] Adding FTS index for sa.managedobject
102017-02-02 15:59:33,198 [noc.main.models.textindex] Adding FTS index for ip.vrf
112017-02-02 15:59:33,204 [noc.main.models.textindex] Adding FTS index for vc.vc
122017-02-02 15:59:33,208 [noc.main.models.textindex] Adding FTS index for ip.prefix
132017-02-02 15:59:33,210 [noc.main.models.textindex] Adding FTS index for ip.address
142017-02-02 15:59:33,242 [noc.core.script.loader] Loading script APC.AOS.get_version
152017-02-02 15:59:33,256 [noc.core.profile.loader] Loading profile APC.AOS
162017-02-02 15:59:33,256 [script] [APC.AOS.get_version|10.129.7.35] Running. Input arguments: {}, timeout 3600
172017-02-02 15:59:33,256 [script] [APC.AOS.get_version|10.129.7.35] Open telnet CLI
182017-02-02 15:59:33,272 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Creating IOLoop
192017-02-02 15:59:33,272 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Connecting (u'10.129.7.35', 23)
202017-02-02 15:59:33,275 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Connected
212017-02-02 15:59:33,276 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <START>
222017-02-02 15:59:33,276 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Setting timeout: 60s
232017-02-02 15:59:33,278 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received WILL ECHO
242017-02-02 15:59:33,278 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send DO ECHO
252017-02-02 15:59:33,281 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nUser Name : '
262017-02-02 15:59:33,281 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^User Name\s+:
272017-02-02 15:59:33,281 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <USERNAME>
282017-02-02 15:59:33,282 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send: 'apc\r\n'
292017-02-02 15:59:33,282 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Setting timeout: 30s
302017-02-02 15:59:33,323 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received WILL ECHO
312017-02-02 15:59:33,323 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send DO ECHO
322017-02-02 15:59:33,325 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'a'
332017-02-02 15:59:33,326 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'p'
342017-02-02 15:59:33,327 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'c'
352017-02-02 15:59:33,329 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nPassword : '
362017-02-02 15:59:33,330 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^Password\s+:
372017-02-02 15:59:33,330 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <PASSWORD>
382017-02-02 15:59:33,330 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send: 'apc\r\n'
392017-02-02 15:59:33,330 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Setting timeout: 30s
402017-02-02 15:59:33,333 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '*'
412017-02-02 15:59:33,333 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '*'
422017-02-02 15:59:33,334 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '*'
432017-02-02 15:59:33,450 [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:59:33,451 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '1.7\r\n'
452017-02-02 15:59:33,454 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '(c) Copyright 2010 All Rights Reserved '
462017-02-02 15:59:33,457 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Symmetra APP v5.1.7\r\n---------------------------------------'
472017-02-02 15:59:33,459 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '----------------------------------------\r\n'
482017-02-02 15:59:33,463 [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:59:33,466 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Contact : ncc@informika.ru Time : 16:03:09\n\r'
502017-02-02 15:59:33,470 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Location : Tverskaya 11 str 1 User : Administrator\n\r'
512017-02-02 15:59:33,486 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Up Time : 8 Days 7 Hours 29 Minutes Stat : P+ N4+ N6+ A+\r\n\r\n'
522017-02-02 15:59:33,489 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\nType ? for command listing'
532017-02-02 15:59:33,491 [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:59:33,496 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'apc>'
552017-02-02 15:59:33,497 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^(\S+)?>
562017-02-02 15:59:33,497 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <PROMT>
572017-02-02 15:59:33,497 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Resetting timeouts
582017-02-02 15:59:33,497 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Send: 'about\r\n'
592017-02-02 15:59:33,500 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'a'
602017-02-02 15:59:33,501 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'b'
612017-02-02 15:59:33,501 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'o'
622017-02-02 15:59:33,503 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'u'
632017-02-02 15:59:33,503 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 't'
642017-02-02 15:59:33,504 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
652017-02-02 15:59:33,507 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'E000: Success\r\n'
662017-02-02 15:59:33,508 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Hardware Factory\r\n'
672017-02-02 15:59:33,508 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
682017-02-02 15:59:33,510 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Model Number: \t\tAP9631\r\n'
692017-02-02 15:59:33,512 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Serial Number: \t\t5A1225T16526\r\n'
702017-02-02 15:59:33,513 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Hardware Revision: \t05\r\n'
712017-02-02 15:59:33,518 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Manufacture Date: \t06/24/2012\r\n'
722017-02-02 15:59:33,519 [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:59:33,522 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Management Uptime: \t8 Days 7 Hours 29 Minutes\r\n'
742017-02-02 15:59:33,522 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
752017-02-02 15:59:33,523 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Application Module\r\n'
762017-02-02 15:59:33,524 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
772017-02-02 15:59:33,529 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name: \t\t\tsy\r\n'
782017-02-02 15:59:33,530 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Version: \t\tv5.1.7\r\n'
792017-02-02 15:59:33,532 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Date: \t\t\tDec 1 2011\r\n'
802017-02-02 15:59:33,533 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Time: \t\t\t13:10:10\r\n'
812017-02-02 15:59:33,533 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
822017-02-02 15:59:33,535 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'APC OS(AOS)\r\n'
832017-02-02 15:59:33,535 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
842017-02-02 15:59:33,540 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name: \t\t\taos\r\n'
852017-02-02 15:59:33,542 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Version: \t\tv5.1.7\r\n'
862017-02-02 15:59:33,543 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Date: \t\t\tNov 22 2011\r\n'
872017-02-02 15:59:33,545 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Time: \t\t\t09:53:57\r\n'
882017-02-02 15:59:33,546 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
892017-02-02 15:59:33,547 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'APC Boot Monitor\r\n'
902017-02-02 15:59:33,548 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '---------------\r\n'
912017-02-02 15:59:33,553 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Name: \t\t\tbootmon\r\n'
922017-02-02 15:59:33,554 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Version: \t\tv1.0.2\r\n'
932017-02-02 15:59:33,556 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Date: \t\t\tJan 21 2010\r\n'
942017-02-02 15:59:33,556 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'Time: \t\t\t13:35:57\r\n'
952017-02-02 15:59:33,557 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: '\r\n'
962017-02-02 15:59:33,559 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Received: 'apc>'
972017-02-02 15:59:33,559 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Match: ^(\S+)?>
982017-02-02 15:59:33,559 [script] [APC.AOS.get_version|10.129.7.35] [telnet] State: <PROMT>
992017-02-02 15:59:33,559 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Command: about
100about
101E000: Success
102Hardware Factory
103---------------
104Model Number: AP9631
105Serial Number: 5A1225T16526
106Hardware Revision: 05
107Manufacture Date: 06/24/2012
108MAC Address: 00 C0 B7 9B EC CA
109Management Uptime: 8 Days 7 Hours 29 Minutes
110
111Application Module
112---------------
113Name: sy
114Version: v5.1.7
115Date: Dec 1 2011
116Time: 13:10:10
117
118APC OS(AOS)
119---------------
120Name: aos
121Version: v5.1.7
122Date: Nov 22 2011
123Time: 09:53:57
124
125APC Boot Monitor
126---------------
127Name: bootmon
128Version: v1.0.2
129Date: Jan 21 2010
130Time: 13:35:57
131
132
1332017-02-02 15:59:33,560 [script] [APC.AOS.get_version|10.129.7.35] [telnet] Closing IOLoop
1342017-02-02 15:59:33,621 [noc.lib.debug] UNHANDLED EXCEPTION (2017-02-02 15:59:33.561327)
135BRANCH: feature/microservices TIP: f6f1ff339798
136PROCESS: /opt/noc/commands/script.py
137ERROR FINGERPRINT: 8f521bed-d587-57d6-a262-b22f20e266b1
138WORKING DIRECTORY: /opt/noc
139EXCEPTION: <class 'noc.core.script.base.UnexpectedResultError'>
140START OF TRACEBACK
141------------------------------------------------------------------------
142File: core/script/base.py (Line: 530)
143Function: re_search
144 523 Returns match object.
145 524 rx can be string or compiled regular expression
146 525 """
147 526 if isinstance(rx, basestring):
148 527 rx = re.compile(rx, flags)
149 528 match = rx.search(s)
150 529 if match is None:
151 530 ==> raise self.UnexpectedResultError()
152 531 return match
153 532
154 533 def re_match(self, rx, s, flags=0):
155 534 """
156 535 Match s against regular expression rx using re.match
157 536 Raise UnexpectedResultError if regular expression is not matched.
158Variables:
159 rx = <_sre.SRE_Pattern object at 0x379dbc0>
160 s =
161'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 29 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'
162 flags = 0
163 self = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3732590>
164 match = None
165------------------------------------------------------------------------
166File: sa/profiles/APC/AOS/get_version.py (Line: 33)
167Function: execute
168 26 rx_serial = re.compile(r"^\s*Serial Number:\s+(?P<serial>\S+)\s*\n", re.MULTILINE)
169 27 ## platform = "Unknown"
170 28
171 29 def execute(self):
172 30 m = self.motd
173 31 if not m:
174 32 ver = self.cli("about", cached=True)
175 33 ==> vmatch = self.re_search(self.rx_fwver, ver)
176 34 smatch = self.re_search(self.rx_serial, ver)
177 35 match = self.re_search(self.rx_platform, ver)
178 36 if not match:
179 37 match = self.re_search(self.rx_platform1, ver)
180 38 return {
181 39 "vendor": "APC",
182Variables:
183 m = ''
184 self = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3732590>
185 ver =
186'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 29 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'
187------------------------------------------------------------------------
188File: core/script/base.py (Line: 213)
189Function: run
190 206 self.logger.info("Using cached result")
191 207 cache_hit = True
192 208 except KeyError:
193 209 pass
194 210 # Execute script
195 211 if not cache_hit:
196 212 try:
197 213 ==> result = self.execute(**self.args)
198 214 if self.cache and self.parent and result:
199 215 self.logger.info("Caching result")
200 216 self.set_cache(self.name, self.args, result)
201 217 finally:
202 218 if not self.parent:
203 219 # Close SNMP socket when necessary
204Variables:
205 cache_hit = False
206 self = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3732590>
207------------------------------------------------------------------------
208File: commands/script.py (Line: 119)
209Function: handle
210 112 capabilities=caps,
211 113 args=args,
212 114 version=version,
213 115 timeout=3600,
214 116 name=script,
215 117 collect_beef=bool(beef)
216 118 )
217 119 ==> result = scr.run()
218 120 if pretty:
219 121 pprint.pprint(result)
220 122 elif yaml:
221 123 import yaml
222 124 import sys
223 125 yaml.dump(result, sys.stdout)
224Variables:
225 obj = <ManagedObject: apc-UPS-7.35>
226 beef = None
227 service = <__main__.ServiceStub object at 0x3732650>
228 script = u'APC.AOS.get_version'
229 script_class = <class 'noc.sa.profiles.APC.AOS.get_version.Script'>
230 self = <__main__.Command object at 0x203ca90>
231 args = {}
232 use_snmp = True
233 caps = {}
234 yaml = False
235 object_name = ['apc-UPS-7.35']
236 version = None
237 arguments = []
238 pretty = True
239 v = Version(profile=u'APC.AOS', vendor=None, platform=None, version=None)
240 credentials =
241{'address': u'10.129.7.35',
242 'cli_protocol': 'telnet',
243 'password': u'apc',
244 'path': None,
245 'snmp_ro': u'kQHDtBgU73mW',
246 'snmp_version': 'v2c',
247 'super_password': u'apc',
248 'user': u'apc'}
249 config = 'etc/noc.yml'
250 options = {}
251 scr = <noc.sa.profiles.APC.AOS.get_version.Script object at 0x3732590>
252------------------------------------------------------------------------
253File: core/management/base.py (Line: 55)
254Function: run_from_argv
255 48 options = parser.parse_args(argv)
256 49 cmd_options = vars(options)
257 50 args = cmd_options.pop("args", ())
258 51 loglevel = cmd_options.pop("loglevel")
259 52 if loglevel:
260 53 self.setup_logging(loglevel)
261 54 try:
262 55 ==> return self.handle(*args, **cmd_options) or 0
263 56 except CommandError, why:
264 57 self.stderr.write(str(why))
265 58 self.stderr.write("\n")
266 59 self.stderr.flush()
267 60 return 1
268 61 except Exception:
269Variables:
270 args = ()
271 loglevel = 'debug'
272 self = <__main__.Command object at 0x203ca90>
273 parser =
274ArgumentParser(prog='script.py', usage=None, description=None, version=None, formatter_class=<class 'argparse.HelpFormatter'>, conflict_handler='error', add_help=True)
275 cmd_options =
276{'arguments': [],
277 'beef': None,
278 'config': 'etc/noc.yml',
279 'object_name': ['apc-UPS-7.35'],
280 'pretty': True,
281 'script': ['get_version'],
282 'use_snmp': True,
283 'yaml': False}
284 argv = ['--debug', '--pretty', 'get_version', 'apc-UPS-7.35']
285 options =
286Namespace(arguments=[], beef=None, config='etc/noc.yml', object_name=['apc-UPS-7.35'], pretty=True, script=['get_version'], use_snmp=True, yaml=False)
287------------------------------------------------------------------------
288END OF TRACEBACK
289
290Process finished with exit code 2