Назад | Перейти на главную страницу

Агент подключился к Opscenter, но данные отсутствуют

В настоящее время я использую Cassandra, OpsCenter и агент OpsCenter на моем компьютере для разработчиков под Windows. Агент успешно подключен к OpsCenter, и я вижу его в списке вместе с объемом используемого дискового пространства.

Однако других данных нет, включая доступное дисковое пространство (что в настоящее время не так интересно, поскольку есть только одна машина, и я использую ее), или какие-либо другие показатели, такие как запросы на запись, задержка и т. Д. все это гораздо полезнее.

Каждую минуту в журнале opscenterd.log появляется следующая ошибка, в которой, похоже, возникает ошибка при обработке дискового пространства агентом:

2014-11-05 07:33:38+1000 []  INFO: Unhandled error in Deferred:
2014-11-05 07:33:38+1000 [] Unhandled Error
    Traceback (most recent call last):
      File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\morbid.py", line 48, in dataReceived
        getattr(self, 'read_%s' % self.state)(**msg)
      File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\morbid.py", line 102, in read_connected
        d.addCallback(getattr(self, 'frame_%s' % cmd))
      File "E:\Program Files\DataStax Community\opscenter\lib\py-win32\2.7\twisted\internet\defer.py", line 297, in addCallback
        callbackKeywords=kw)
      File "E:\Program Files\DataStax Community\opscenter\lib\py-win32\2.7\twisted\internet\defer.py", line 286, in addCallbacks
        self._runCallbacks()
    --- <exception caught here> ---
      File "E:\Program Files\DataStax Community\opscenter\lib\py-win32\2.7\twisted\internet\defer.py", line 542, in _runCallbacks
        current.result = callback(current.result, *args, **kw)
      File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\morbid.py", line 122, in frame_send
        self.factory.mqm.send_message(self, headers['destination'], (headers, body))
      File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\messagequeue.py", line 146, in send_message
        self.message_queues[dest_name].send(message)
      File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\messagequeue.py", line 76, in send
        proto.send(self.prep_message(message))
      File "build/lib/python2.7/site-packages/opscenterd/OrbitedService.py", line 265, in send

      File "build/lib/python2.7/site-packages/opscenterd/Agents.py", line 294, in routeIncoming

      File "build/lib/python2.7/site-packages/opscenterd/Agents.py", line 689, in processStorageInfo

      File "build/lib/python2.7/site-packages/opscenterd/Cluster.py", line 1107, in updateStorageInfo

      File "build/lib/python2.7/site-packages/opscenterd/Cluster.py", line 1096, in sumDiskSpace

    exceptions.KeyError: u'E:'

В настоящее время я использую Datastax Community Edition 2.1.0, и он установлен на моем диске E, который предполагает хэш-ключ, упомянутый в сообщении об ошибке выше.

Есть идеи, что я могу сделать, чтобы решить эту проблему?

Вы можете скопировать c: \ Windows \ System32 \ typeperf.exe в e: \ Windows \ System32 \ typeperf.exe или создать символическую ссылку.

Оказывается, агент OpsCenter в Windows жестко кодирует путь к typeperf.exe как «\ Windows \ System32 \ typeperf.exe» и поэтому не может выполнить его, если он установлен на что-либо, кроме системного диска.

В журнале agent.log неоднократно регистрировалась следующая ошибка:

ERROR [os-metrics-14] 2014-11-20 11:28:39,088 Long os-stats collector failed: Cannot run program "\Windows\System32\typeperf.exe": CreateProcess error=2, The system cannot find the file specified

В соответствии с http://www.datastax.com/support-forums/topic/error-loading-cluster-no-cassandra-connections-available против этого была поднята внутренняя ошибка, но в настоящее время нет другого решения, кроме установки на системный диск.