Как я могу программно читать журналы сервера из HLDS? - PullRequest
1 голос
/ 10 января 2009

Как можно читать и анализировать журналы сервера, отправленные удаленно с HLDS (Half-Life Dedicated Server)?

Насколько я понимаю, вы можете указать, куда сервер доставляет журналы, используя команду log_address. После этого сервер должен доставлять журналы через UDP.

Как я могу прослушивать эти журналы с помощью PHP или ASP.NET C #? Я не знаю, должен ли я прослушивать входящие пакеты или отправлять запрос в HLDS для пакетов. Я пытался отслеживать свои UDP-соединения, используя netstat -a, но, похоже, не могу понять это.

Примечание: я хотел бы использовать реализацию log_address, поскольку я не могу установить какие-либо сторонние моды на сервер, чтобы помочь с процессом регистрации. Я также знаю о HLSW и не ищу клиентское приложение, такое как это.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 30 июля 2013

Вам стоит взглянуть на Steam HLDS Log Parser gem.

Он в Ruby и работает так:

  • на ваших hlds, используйте logaddress xxx.xxx.xxx.xxx yyyy, где x - это ip, и y ваш порт, куда будут отправляться журналы с использованием UDP
  • получите драгоценный камень и проверьте пример: он получает и анализирует журналы, а также отображает содержимое.

Когда я говорю display, на самом деле вы можете делать с возвращенным содержимым все, что вы хотите (нажмите на irc, запишите в базу данных ...). Просто напишите свой собственный "displayer"

Я опубликовал этот драгоценный камень несколько дней назад, не стесняйтесь вносить свой вклад. Недавно я добавил поддержку i18n с английскими и французскими переводами.

Привет.

0 голосов
/ 26 августа 2012

Я знаю, что это старый вопрос, но я не могу ответить нигде. Я бы предпочел не объяснять о UDP, так как он был рассмотрен снова и снова. Однако, если вы правильно указали серверу свой общедоступный IP-адрес и тот же порт, который прослушиваете UDP, и вы не получаете никаких данных, существует один прием для фактического приема пакетов.

Вы должны отправить сообщение на сервер через стандартный игровой порт сервера. Неважно, что это, это может быть «привет» для всех забот сервера. После этого вы должны начать получать данные с сервера. Я не совсем уверен, почему это так, но, вероятно, Valve разработала стратегию, чтобы сервер не рассылал спам только по старым IP-адресам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...