Opened 5 years ago

Closed 3 years ago

#12785 closed defect (worksforme)

arm crashes on Debian Wheezy

Reported by: cypherpunks Owned by: atagar
Priority: Medium Milestone:
Component: Core Tor/Nyx Version:
Severity: Normal Keywords: debian
Cc: ioerror Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

apt-cache show tor-arm
Package: tor-arm
Version: 1.4.5.0-1
Installed-Size: 1007
Maintainer: Ulises Vitulli <dererk@debian.org>
Architecture: all
Depends: python (>= 2.6.6-7~), python-torctl
Suggests: tor
Description-en: terminal status monitor for tor
 The anonymizing relay monitor (arm) is a terminal status monitor for Tor
 relays, intended for command-line aficionados, ssh connections, and anyone
 stuck with a tty terminal. This works much like top does for system usage,
 providing real time statistics for:
 .
  - bandwidth, cpu, and memory usage
  - relay's current configuration
  - logged events
  - connection details (ip, hostname, fingerprint, and consensus data)
  - etc.
Homepage: http://www.atagar.com/arm/
Description-md5: ec44664df4c223075aac5e459d59c2b0
Tag: implemented-in::python, role::program, use::monitor
Section: comm
Priority: extra
Filename: pool/main/t/tor-arm/tor-arm_1.4.5.0-1_all.deb
Size: 306998
MD5sum: 8276cafb2e871eec300b5704956ea199
SHA1: d07939252d8410f0802f3df52edd34ce57c7c026
SHA256: 3715c89554f0d9aab75a3b92e6a47dee15a5136a48e2d887ef393ab7516988ce


arm version:

arm --version
arm version 1.4.5.0 (released April 28, 2012)

arm crashes like so at startup:

# arm
Traceback (most recent call last):
  File "/usr/share/arm/starter.py", line 578, in <module>
    cli.controller.startTorMonitor(time.time() - initTime)
  File "/usr/share/arm/cli/controller.py", line 700, in startTorMonitor
    curses.wrapper(drawTorMonitor, startTime)
  File "/usr/lib/python2.7/curses/wrapper.py", line 43, in wrapper
    return func(stdscr, *args, **kwds)
  File "/usr/share/arm/cli/controller.py", line 720, in drawTorMonitor
    initController(stdscr, startTime)
  File "/usr/share/arm/cli/controller.py", line 86, in initController
    firstPagePanels.append(cli.logPanel.LogPanel(stdscr, expandedEvents, config))
  File "/usr/share/arm/cli/logPanel.py", line 652, in __init__
    self.reprepopulateEvents()
  File "/usr/share/arm/cli/logPanel.py", line 696, in reprepopulateEvents
    torEventBacklog = getLogFileEntries(setRunlevels, readLimit, addLimit, self._config)
  File "/usr/share/arm/cli/logPanel.py", line 313, in getLogFileEntries
    eventTimeComp = list(time.strptime(timestamp, "%Y %b %d %H:%M:%S"))
  File "/usr/lib/python2.7/_strptime.py", line 467, in _strptime_time
    return _strptime(data_string, format)[0]
  File "/usr/lib/python2.7/_strptime.py", line 325, in _strptime
    (data_string, format))
ValueError: time data '2012 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Apr 23 20:20:01' does not match format '%Y %b %d %H:%M:%S'
Exception in thread Thread-3 (most likely raised during interpreter shutdown):Exception in thread Thread-1 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 552, in __bootstrap_inner

Traceback (most recent call last):
  File "/usr/share/arm/util/connections.py", line 476, in run  File "/usr/lib/python2.7/threading.py", line 552, in __bootstrap_inner

  File "/usr/lib/python2.7/threading.py", line 142, in release  File "/usr/share/arm/util/sysTools.py", line 546, in run

<type 'exceptions.TypeError'>: 'NoneType' object is not callable  File "/usr/lib/python2.7/threading.py", line 142, in release
<type 'exceptions.TypeError'>: 'NoneType' object is not callable

Any ideas?

Child Tickets

Change History (4)

comment:1 Changed 5 years ago by atagar

Status: newneeds_information

Hi cypherpunks, arm is crashing when it tried to read your log file from disk. For some reason it contains "'2012 \x00\x00\x00\x00..." where there should be a date. Any idea how it got into this state?

Stopping tor, moving the log out of the way, then restarting tor should address this problem. I'll be sure to include a better error message for the next arm release since we shouldn't stacktrace due to an outside resource like the log.

comment:2 Changed 5 years ago by cypherpunks

I assume that data is in the log because Tor filled the log with that data.

comment:3 Changed 5 years ago by atagar

Hi Jake. It sounded on irc like you figured this out. Would you like to keep this open or is this ok to resolve?

comment:4 Changed 3 years ago by atagar

Resolution: worksforme
Severity: Normal
Status: needs_informationclosed

Cleaning up old tickets. Nyx is undergoing a rewrite, if this is still relevant then feel free to reopen.

Note: See TracTickets for help on using tickets.