Hi guys,
I’ve recently left testing phase as everything was working well. I’ve set up auto-scheduler and it ran just fine. This morning I receive an email that my station is offline. Once I rebooted it, everything went back online however logs seem to be a bit concerning so I would appreciate some feedback.
Long post incoming! Here’s what daemon.log was showing before I rebooted my station:
Nov 29 08:53:41 satnogs satnogs-client[483]: OperationalError: (sqlite3.OperationalError) database or disk is full [SQL: u’UPDATE apscheduler_jobs SET next_run_time=?, job_state=? WHERE apscheduler_jobs.id = ?‘] [parameters: (1575014081.323102, <read-only buffer for 0x71da8640, size -1, offset 0 at 0x6c44db00>, ‘7fcca4cba1da419b8d8f7a6ce1c1b117’)] (Background on this error at: Error Messages — SQLAlchemy 2.0 Documentation)
Nov 29 08:53:41 satnogs satnogs-client[483]: 2019-11-29 08:53:41,667 - apscheduler.executors.default - ERROR - Job “get_jobs (trigger: interval[0:01:00], next run at: 2019-11-29 07:54:41 UTC)” raised an exception
Nov 29 08:53:41 satnogs satnogs-client[483]: Traceback (most recent call last):
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/apscheduler/executors/base.py”, line 125, in run_job
Nov 29 08:53:41 satnogs satnogs-client[483]: retval = job.func(*job.args, **job.kwargs)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/scheduler/tasks.py”, line 207, in get_jobs
Nov 29 08:53:41 satnogs satnogs-client[483]: replace_existing=True)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/apscheduler/schedulers/base.py”, line 439, in add_job
Nov 29 08:53:41 satnogs satnogs-client[483]: self._real_add_job(job, jobstore, replace_existing)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/apscheduler/schedulers/base.py”, line 867, in _real_add_job
Nov 29 08:53:41 satnogs satnogs-client[483]: store.update_job(job)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/apscheduler/jobstores/sqlalchemy.py”, line 107, in update_job
Nov 29 08:53:41 satnogs satnogs-client[483]: result = self.engine.execute(update)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”, line 2144, in execute
Nov 29 08:53:41 satnogs satnogs-client[483]: return connection.execute(statement, *multiparams, **params)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”, line 980, in execute
Nov 29 08:53:41 satnogs satnogs-client[483]: return meth(self, multiparams, params)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py”, line 273, in _execute_on_connection
Nov 29 08:53:41 satnogs satnogs-client[483]: return connection._execute_clauseelement(self, multiparams, params)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”, line 1099, in _execute_clauseelement
Nov 29 08:53:41 satnogs satnogs-client[483]: distilled_params,
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”, line 1240, in _execute_context
Nov 29 08:53:41 satnogs satnogs-client[483]: e, statement, parameters, cursor, context
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”, line 1458, in _handle_dbapi_exception
Nov 29 08:53:41 satnogs satnogs-client[483]: util.raise_from_cause(sqlalchemy_exception, exc_info)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/util/compat.py”, line 296, in raise_from_cause
Nov 29 08:53:41 satnogs satnogs-client[483]: reraise(type(exception), exception, tb=exc_tb, cause=cause)
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”, line 1236, in _execute_context
Nov 29 08:53:41 satnogs satnogs-client[483]: cursor, statement, parameters, context
Nov 29 08:53:41 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py”, line 536, in do_execute
Nov 29 08:53:41 satnogs satnogs-client[483]: cursor.execute(statement, parameters)
Nov 29 08:53:41 satnogs satnogs-client[483]: OperationalError: (sqlite3.OperationalError) database or disk is full [SQL: u’UPDATE apscheduler_jobs SET next_run_time=?, job_state=? WHERE apscheduler_jobs.id = ?’] [parameters: (1575123236.0, <read-only buffer for 0x6dc04ec8, size -1, offset 0 at 0x6c466e20>, ‘1281378’)] (Background on this error at: Error Messages — SQLAlchemy 2.0 Documentation)
Nov 29 08:54:04 satnogs satnogs-client[483]: 2019-11-29 08:54:04,185 - satnogsclient - INFO - Closing socket: <socket._socketobject object at 0x6e888a40>
Nov 29 08:54:22 satnogs satnogs-client[483]: Found 1 device(s):
Nov 29 08:54:22 satnogs satnogs-client[483]: 0: Realtek, RTL2838UHIDIR, SN: 00000001
Nov 29 08:54:22 satnogs satnogs-client[483]: Using device 0: Generic RTL2832U OEM
Nov 29 08:54:22 satnogs satnogs-client[483]: usb_claim_interface error -6
Nov 29 08:54:22 satnogs satnogs-client[483]: 2019-11-29 08:54:22,751 - apscheduler.executors.default - ERROR - Job “spawn_observer (trigger: date[2019-11-29 07:43:52 UTC], next run at: 2019-11-29 07:43:52 UTC)” raised an exception
Nov 29 08:54:22 satnogs satnogs-client[483]: Traceback (most recent call last):
Nov 29 08:54:22 satnogs satnogs-client[483]: File “/usr/lib/python2.7/dist-packages/apscheduler/executors/base.py”, line 125, in run_job
Nov 29 08:54:22 satnogs satnogs-client[483]: retval = job.func(*job.args, **job.kwargs)
Nov 29 08:54:22 satnogs satnogs-client[483]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/scheduler/tasks.py”, line 110, in spawn_observer
Nov 29 08:54:22 satnogs satnogs-client[483]: observer.observe()
Nov 29 08:54:22 satnogs satnogs-client[483]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/observer.py”, line 301, in observe
Nov 29 08:54:22 satnogs satnogs-client[483]: self.plot_waterfall()
Nov 29 08:54:22 satnogs satnogs-client[483]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/observer.py”, line 390, in plot_waterfall
Nov 29 08:54:22 satnogs satnogs-client[483]: data = np.fromfile(wf_file, dtype=‘float32’).reshape(-1, nchan+1)
Notice the first line, database and disk full. There’s around 11GB of free space, so I doubt it’s disk space.
There’s also error for SDR, I’m not sure why that happens all of the sudden:
usb_claim_interface error -6
Then there’s this which keeps repeating across the whole log every time the scheduling
Nov 29 20:49:05 satnogs satnogs-client[6348]: 2019-11-29 20:49:05,103 - satnogsclient - ERROR - Cannot connect to socket 127.0.0.1:4533
Nov 29 20:49:05 satnogs satnogs-client[6348]: Exception in thread Thread-57:
Nov 29 20:49:05 satnogs satnogs-client[6348]: Traceback (most recent call last):
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/usr/lib/python2.7/threading.py”, line 801, in __bootstrap_inner
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.run()
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/usr/lib/python2.7/threading.py”, line 754, in run
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.__target(*self.__args, **self.__kwargs)
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/worker.py”, line 142, in _status_interface
Nov 29 20:49:05 satnogs satnogs-client[6348]: sock.bind()
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/commsocket.py”, line 104, in bind
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.s.bind((self._TCP_IP, self._TCP_PORT))
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/usr/lib/python2.7/socket.py”, line 228, in meth
Nov 29 20:49:05 satnogs satnogs-client[6348]: return getattr(self._sock,name)(*args)
Nov 29 20:49:05 satnogs satnogs-client[6348]: error: [Errno 98] Address already in use
Nov 29 20:49:05 satnogs satnogs-client[6348]: 2019-11-29 20:49:05,130 - satnogsclient - ERROR - Cannot connect to socket 127.0.0.1:4533
Nov 29 20:49:05 satnogs satnogs-client[6348]: Exception in thread Thread-56:
Nov 29 20:49:05 satnogs satnogs-client[6348]: Traceback (most recent call last):
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/usr/lib/python2.7/threading.py”, line 801, in __bootstrap_inner
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.run()
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/usr/lib/python2.7/threading.py”, line 754, in run
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.__target(*self.__args, **self.__kwargs)
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/worker.py”, line 134, in _communicate_tracking_info
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.send_to_socket(p, sock)
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/worker.py”, line 240, in send_to_socket
Nov 29 20:49:05 satnogs satnogs-client[6348]: position = sock.send(“p\n”).split(‘\n’)
Nov 29 20:49:05 satnogs satnogs-client[6348]: File “/var/lib/satnogs/local/lib/python2.7/site-packages/satnogsclient/observer/commsocket.py”, line 76, in send
Nov 29 20:49:05 satnogs satnogs-client[6348]: self.s.send(message)
Nov 29 20:49:05 satnogs satnogs-client[6348]: error: [Errno 32] Broken pipe
This also keeps showing up in logs:
satnogsclient - ERROR - Cannot connect to socket 127.0.0.1:4533
According to troubleshooting page, it’s related to rotator which I don’t use. I have rotator set to NO in my satnogs-setup.
For now, I disabled auto scheduler as this seems to be something related to observation scheduling. I can send complete logs to devs on request.
Any help would be greatly appreciated.
Thanks!