Перейти к содержимому
=FB=Vaal

Статистика серверов Ил-2 (неофициальный проект)

Рекомендованные сообщения

Можно ли "на лету" завести пилота в сквад, добавив корректные записи в таблицы squads_members, users, profiles, но не добавляя в players?

Сломается ли от этого учёт первого или последующих вылетов игрока, после таких изменений?

 

При этом есть 2 случая.

1. Зарегистрировавшийся игрок делал вылет ранее и статистика его "знает" (связала ник и пользователя на сайте)

2. Зарегистрировавшийся игрок заходит на сервер впервые.

Есть ли разница, как в этих случая действовать?

Изменено пользователем 72AG_Crusader

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что значит на лету?

 

Разница конечно есть

В первом случаи связывание юзера и статы происходит в момент регистрации по нику.

Во втором стата связанная с юзером появится после миссии.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"На лету" имелось ввиду, когда миссия ещё не завершилась и парсер её не обработал и не сохранил в БД.

Изменено пользователем 72AG_Crusader

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если это будет сделано синхронно то проблем быть не должно (т.е. ни какой то параллельно запущенный процесс который может начать что-то менять/добавлять прямо во время обработки миссии).

  • Поддерживаю! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какая-то ошибка с сильно длинным стек-трейсом. Можно прояснить в чём дело?

 

 

--- Logging error ---
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\u
tils.py", line 64, in execute
    return self.cursor.execute(sql, params)
psycopg2.IntegrityError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u043f\u043e\u04
32\u0442\u043e\u0440\u044f\u044e\u0449\u0435\u0435\u0441\u044f \u0437\u043d\u043
0\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u044e\u0447\u0430 \u043d\u0430\u044
0\u0443\u0448\u0430\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435
\u043d\u0438\u0435 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0441\
u0442\u0438 "users_username_key"
DETAIL:  \u041a\u043b\u044e\u0447 "(username)=(ross_Sib54RUS)" \u0443\u0436\u043
5 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442.
 
 
The above exception was the direct cause of the following exception:
 
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Program Files (x86)\Python 3.5\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\views\decorat
ors\cache.py", line 57, in _wrapped_view_func
    response = view_func(request, *args, **kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\contrib\auth\
decorators.py", line 23, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\views\decorat
ors\debug.py", line 76, in sensitive_post_parameters_wrapper
    return view(request, *args, **kwargs)
  File "C:\distrib\il2_stats_random\src\users\views.py", line 161, in profile
    user = form.save()
  File "C:\distrib\il2_stats_random\src\users\forms.py", line 134, in save
    user.save()
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\contrib\auth\
base_user.py", line 80, in save
    super(AbstractBaseUser, self).save(*args, **kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\bas
e.py", line 796, in save
    force_update=force_update, update_fields=update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\bas
e.py", line 824, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, upda
te_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\bas
e.py", line 889, in _save_table
    forced_update)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\bas
e.py", line 939, in _do_update
    return filtered._update(values) > 0
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\que
ry.py", line 654, in _update
    return query.get_compiler(self.db).execute_sql(CURSOR)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql
\compiler.py", line 1148, in execute_sql
    cursor = super(SQLUpdateCompiler, self).execute_sql(result_type)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql
\compiler.py", line 835, in execute_sql
    cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\u
tils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\utils.py",
 line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\six.py"
, line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\u
tils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.IntegrityError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u043f\u0
43e\u0432\u0442\u043e\u0440\u044f\u044e\u0449\u0435\u0435\u0441\u044f \u0437\u04
3d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u044e\u0447\u0430 \u043d\u04
30\u0440\u0443\u0448\u0430\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u044
7\u0435\u043d\u0438\u0435 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e
\u0441\u0442\u0438 "users_username_key"
DETAIL:  \u041a\u043b\u044e\u0447 "(username)=(ross_Sib54RUS)" \u0443\u0436\u043
5 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442.
 
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "C:\Program Files (x86)\Python 3.5\lib\logging\__init__.py", line 982, in
 emit
    stream.write(msg)
  File "C:\Program Files (x86)\Python 3.5\lib\encodings\cp1252.py", line 19, in
encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 284-289:
 character maps to <undefined>
Call stack:
  File "C:\Program Files (x86)\Python 3.5\lib\threading.py", line 882, in _boots
trap
    self._bootstrap_inner()
  File "C:\Program Files (x86)\Python 3.5\lib\threading.py", line 914, in _boots
trap_inner
    self.run()
  File "C:\Program Files (x86)\Python 3.5\lib\threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\waitress\task.py", l
ine 78, in handler_thread
    task.service()
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\waitress\channel.py"
, line 338, in service
    task.service()
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\waitress\task.py", l
ine 169, in service
    self.execute()
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\waitress\task.py", l
ine 399, in execute
    app_iter = self.channel.server.application(env, start_response)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\dj_static.py", line
83, in __call__
    return self.application(environ, start_response)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\dj_static.py", line
83, in __call__
    return self.application(environ, start_response)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\wsgi.py", line 170, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\base.py", line 124, in get_response
    response = self._middleware_chain(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\src\core\middleware.py", line 20, in middlew
are
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\depreca
tion.py", line 133, in __call__
    response = self.get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 39, in inner
    response = get_response(request)
  File "C:\distrib\il2_stats_random\src\stats\middleware.py", line 29, in middle
ware
    response = get_response(request)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 41, in inner
    response = response_for_exception(request, exc)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 86, in response_for_exception
    response = handle_uncaught_exception(request, get_resolver(get_urlconf()), s
ys.exc_info())
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\handlers
\exception.py", line 124, in handle_uncaught_exception
    extra={'status_code': 500, 'request': request},
Message: 'Internal Server Error: %s'
Arguments: ('/ru/profile/',)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

похоже что ошибка из-за попытки вставить в базу значение которое уже есть в другой записи, уникальный ключ

  • Поддерживаю! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот периодически такое попадается. Это запрещённый символ где-то?

 

C:\Program Files\1C Game Studios\IL-2\bin\il2_stats\.venv\lib\site-packages\argo
n2\low_level.py:93: UserWarning: implicit cast to 'char *' from a different poin
ter type: will be forbidden in the future (check that the types are as you expec
t; use an explicit ffi.cast() if they are correct)
  version,
C:\Program Files\1C Game Studios\IL-2\bin\il2_stats\.venv\lib\site-packages\argo
n2\low_level.py:155: UserWarning: implicit cast to 'char *' from a different poi
nter type: will be forbidden in the future (check that the types are as you expe
ct; use an explicit ffi.cast() if they are correct)
  type.value,

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Этот варнинг можно игнорить. Ругается функция хэширования паролей.

Должно перестать после следующего обновления библиотек.

  • Поддерживаю! 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно в статистике добавить сортировку по сторонам и результативности в закладке результаты миссии?

Изменено пользователем ROSS_Pups

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По всем результатам сортировка уже есть. Если речь про сортировку по двум параметрам сразу, то нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

да по двум параметрам получается...

по коалиции и очкам. 

В рофе было так, удобно.

 

Опять же это пожелание, то что есть тоже хорошо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если речь про мою стату РОФа, там так же не было такого http://stats.newwingstraining.org/mission/18247/

 

Может когда-нибудь сделаю, но не факт. Один параметр просто в лоб делается, а больше одного уже гемор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть возможность форкнуться (fork) ?

Хочу свой проект более тесно интегрировать со статистикой, но пока мешают предубеждения в собственной некомпетентности :)

Довольно сложно вникнуть в другой проект не зная базовых модулей, на которых он построен. Как устроена модель данных парсер-БД-джанго пока не могу осилить.

Также мучает вопрос - как в этом случае апдейты делать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сейчас публичного репозитория нигде нет. Если нужно просто для упрощения синхронизации своей работы с базовой версией могу поднять например на гитхабе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно выводить в конце миссии либо количество летавших за каждую из сторон либо ратио ( допустим среднее)  за миссию....:?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Налет часов в принципе и есть ратио в каком то смысле. Т.е. дает понять кого было больше, а кого меньше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот из-за этой строчки таблицы objects парсер может падать?

100;"Ju 52 3mg4e turret";"Ju 52 3mg4e turret";"турель Ju 52 3mg4e";"turret_ju523mg4e";"turret";"aircraft_turret";11;"";FALSE

В конце is_playable = FALSE

Хотя турелькой-то можно рулить на тётке.

Изменено пользователем 72AG_Crusader

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Парсер сам ещё такую ошибку выдаёт:


C:\distrib\il2_stats_random\run>cd ../src

 

C:\distrib\il2_stats_random\src>"../.venv/Scripts/python.exe" manage.py stats_wh

ore

[2016.12.21 11:01:36] IL2 stats 1.2.6, Python 3.5.2, Django 1.10.4

[2016.12.21 11:01:36] missionReport(2016-12-20_22-00-55)[0] - processing new rep

ort

[2016.12.21 11:01:36] unexpected error

Traceback (most recent call last):

  File "C:\distrib\il2_stats_random\src\stats\management\commands\stats_whore.py

", line 16, in handle

    stats_whore.main()

  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 63, in main

    stats_whore(m_report_file=m_report_file)

  File "C:\Program Files (x86)\Python 3.5\lib\contextlib.py", line 30, in inner

    return func(*args, **kwds)

  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 158, in stat

s_whore

    m_report.processing(files=m_report_files)

  File "C:\distrib\il2_stats_random\src\mission_report\report.py", line 98, in p

rocessing

    data['coal_id'] = self.countries[data['country_id']]

TypeError: 'NoneType' object is not subscriptable

Traceback (most recent call last):

  File "manage.py", line 7, in <module>

    execute_from_command_line(sys.argv)

  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\manageme

nt\__init__.py", line 367, in execute_from_command_line

    utility.execute()

  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\manageme

nt\__init__.py", line 359, in execute

    self.fetch_command(subcommand).run_from_argv(self.argv)

  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\manageme

nt\base.py", line 294, in run_from_argv

    self.execute(*args, **cmd_options)

  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\manageme

nt\base.py", line 345, in execute

    output = self.handle(*args, **options)

  File "C:\distrib\il2_stats_random\src\stats\management\commands\stats_whore.py

", line 16, in handle

    stats_whore.main()

  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 63, in main

    stats_whore(m_report_file=m_report_file)

  File "C:\Program Files (x86)\Python 3.5\lib\contextlib.py", line 30, in inner

    return func(*args, **kwds)

  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 158, in stat

s_whore

    m_report.processing(files=m_report_files)

  File "C:\distrib\il2_stats_random\src\mission_report\report.py", line 98, in p

rocessing

    data['coal_id'] = self.countries[data['country_id']]

TypeError: 'NoneType' object is not subscriptable

 

C:\distrib\il2_stats_random\src>pause

Press any key to continue . . .


Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот лог миссии, на которой падёж происходит

https://dl.dropboxusercontent.com/u/23658377/%D0%91%D0%B7%D0%A1/bugs/missionReport%282016-12-20_22-00-55%29.zip

 

 

Там файлики [1] и [2] вложены в нулевой, они не пропали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот из-за этой строчки таблицы objects парсер может падать?

100;"Ju 52 3mg4e turret";"Ju 52 3mg4e turret";"турель Ju 52 3mg4e";"turret_ju523mg4e";"turret";"aircraft_turret";11;"";FALSE

В конце is_playable = FALSE

Хотя турелькой-то можно рулить на тётке.

 

Да из-за этого, выложу обновленную версию, либо можно файл исправить и запустить обновление

 

 

 

Там файлики [1] и [2] вложены в нулевой, они не пропали.

 

Из-за этого ошибку и выдает, потому что дата у 0 файла "кривая"

  • Поддерживаю! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Из-за этого ошибку и выдает, потому что дата у 0 файла "кривая"

Как исправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

дату файла поставить меньше чем у следующего от этой миссии

  • Поддерживаю! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Такого рода ошибки сыплются в довольно большом количестве

 

 

ERROR:sentry.errors.uncaught:['Page Not Found: http://72ag-ded.ru/fr/sortie/log/
99426/]
ERROR:sentry.errors:Sentry responded with an API error: APIError(Event dropped d
ue to filter)
ERROR:sentry.errors.uncaught:['Page Not Found: http://72ag-ded.ru/fr/sortie/log/
91785/]
ERROR:sentry.errors.uncaught:['Page Not Found: http://72ag-ded.ru/fr/sortie/log/
177665/]

 

 

 

Что это может означать?

Изменено пользователем 72AG_Crusader

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это логирование ошибок сайта. В данном случаи обращение к несуществующим страницам. Можно спокойно игнорировать.

В след версии попробую настроить чтобы не забивало лог, или отключу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть такая проблема.

Особо "заботливые" пользователи при смене ника регистрируются повторно. И попадают в коллизию с предыдущей своей учёткой.

 

Какое-то решение можно придумать? чтобы каждому такому не объяснять, что повторная регистрация - выстрел себе в ногу.

Изменено пользователем 72AG_Crusader

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не знаю что тут можно придумать. Они же делают это до того как статистика вообще узнала что ник был изменен.

Делать перепривязку всего под новую регистрацию я не буду. Как говориться ССЗБ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Хотя бы сделать предупреждающую плашку со смыслом: "если вы уже зареганы - проходите мимо".

Могу и сам, но другие статодержатели оценят ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В игре существует баг который пока не могут отловить. Суть его в том, что самолет появляется на аэродроме противника и его сразу же уничтожают зенитные орудия (картинка при этом отсутствует, но звук идет). В статистике появляется килл и пропадает стрик. 

Было бы неплохо добавить проверку на подобные вещи и фильтровать их. Суть - не учитывать смерти пилота если она произошла в первые 5 секунд после появления. В настройках добавить включение этой опции (можно и количество секунд  заложить в конфиг). Полагаю она будет лишней для серверов, где появление происходит в воздухе поэтому должна быть возможность ее отключения.

 

P.S. Подобные баги часто наблюдаются на сервере Random Expert и 72AG_Crusader порекомендовал обратиться к разработчику статистики, что очень справедливо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В игре существует баг который пока не могут отловить. Суть его в том, что самолет появляется на аэродроме противника и его сразу же уничтожают зенитные орудия (картинка при этом отсутствует, но звук идет). В статистике появляется килл и пропадает стрик. 

Было бы неплохо добавить проверку на подобные вещи и фильтровать их. Суть - не учитывать смерти пилота если она произошла в первые 5 секунд после появления. В настройках добавить включение этой опции (можно и количество секунд  заложить в конфиг). Полагаю она будет лишней для серверов, где появление происходит в воздухе поэтому должна быть возможность ее отключения.

 

P.S. Подобные баги часто наблюдаются на сервере Random Expert и 72AG_Crusader порекомендовал обратиться к разработчику статистики, что очень справедливо.

поддерживаю! Баг сильно раздражает!!! Ваал будет супер если подобные вылеты не будут записываться в стату игрока при формировании статистики после вылета.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Выложите ссылки на недавние подобные вылеты, и логи если есть доступ к ним.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в последнем обонвлении не сделали зачистку глючных вылетов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в последнем обонвлении не сделали зачистку глючных вылетов?

 

 

[1.2.8] - 2017-01-28

- обновление либ

- опция минимального времени вылета

 

sortie_min_time

по умолчанию = 0, т.е. отключено

время выставляется в секундах

статистика вылетов подходящих под условия не суммируется в общий профиль

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в репозитории обновишь?

 

зы

я сделал плашку про ненадобность повторной реги, ждём-с)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваал, подскажи по 1.2.8 и sortie_min_time пожалуйста. Какое минимальное значение ты рекомендуешь, чтобы гарантировано отсекать баг с появление на филде противника?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я не собирал статистику, так что не могу ничего рекомендовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поджог HE 111, она сбила пламя и села в поле. Пилот попал в плен. Почему мне не записали победу?

http://il2stat.aviaskins.com:8008/ru/sortie/log/1528731/?tour=19

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Стало падать с такой ошибкой:

 

 

 

C:\distrib\il2_stats_random\run>cd ../src
 
C:\distrib\il2_stats_random\src>"../.venv/Scripts/python.exe" manage.py stats_whore
[2017.02.23 15:03:49] IL2 stats 1.2.8, Python 3.5.2, Django 1.10.5
[2017.02.23 15:03:49] missionReport(2017-02-23_06-06-02)[0] - processing new report
[2017.02.23 15:03:49] unexpected error
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
psycopg2.DataError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u0446\u0435\u043b\u043e\u0435 \u0432\u043d\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430
 
 
The above exception was the direct cause of the following exception:
 
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 63, in main
    stats_whore(m_report_file=m_report_file)
  File "C:\Program Files (x86)\Python 3.5\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 265, in stats_whore
    p.save()
  File "C:\distrib\il2_stats_random\src\stats\models.py", line 452, in save
    super().save(*args, **kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 796, in save
    force_update=force_update, update_fields=update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 824, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 889, in _save_table
    forced_update)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 939, in _do_update
    return filtered._update(values) > 0
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\query.py", line 654, in _update
    return query.get_compiler(self.db).execute_sql(CURSOR)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 1148, in execute_sql
    cursor = super(SQLUpdateCompiler, self).execute_sql(result_type)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 835, in execute_sql
    cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.DataError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u0446\u0435\u043b\u043e\u0435 \u0432\u043d\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430
 
--- Logging error ---
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
psycopg2.DataError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u0446\u0435\u043b\u043e\u0435 \u0432\u043d\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430
 
 
The above exception was the direct cause of the following exception:
 
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 63, in main
    stats_whore(m_report_file=m_report_file)
  File "C:\Program Files (x86)\Python 3.5\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 265, in stats_whore
    p.save()
  File "C:\distrib\il2_stats_random\src\stats\models.py", line 452, in save
    super().save(*args, **kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 796, in save
    force_update=force_update, update_fields=update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 824, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 889, in _save_table
    forced_update)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 939, in _do_update
    return filtered._update(values) > 0
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\query.py", line 654, in _update
    return query.get_compiler(self.db).execute_sql(CURSOR)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 1148, in execute_sql
    cursor = super(SQLUpdateCompiler, self).execute_sql(result_type)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 835, in execute_sql
    cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.DataError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u0446\u0435\u043b\u043e\u0435 \u0432\u043d\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430
 
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "C:\Program Files (x86)\Python 3.5\lib\logging\__init__.py", line 982, in emit
    stream.write(msg)
  File "C:\Program Files (x86)\Python 3.5\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 252-257: character maps to <undefined>
Call stack:
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\__init__.py", line 359, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\base.py", line 294, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\base.py", line 345, in execute
    output = self.handle(*args, **options)
  File "C:\distrib\il2_stats_random\src\stats\management\commands\stats_whore.py", line 18, in handle
    logger.exception('unexpected error')
Message: 'unexpected error'
Arguments: ()
Traceback (most recent call last):
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
psycopg2.DataError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u0446\u0435\u043b\u043e\u0435 \u0432\u043d\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430
 
 
The above exception was the direct cause of the following exception:
 
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\__init__.py", line 359, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\base.py", line 294, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\core\management\base.py", line 345, in execute
    output = self.handle(*args, **options)
  File "C:\distrib\il2_stats_random\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 63, in main
    stats_whore(m_report_file=m_report_file)
  File "C:\Program Files (x86)\Python 3.5\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\distrib\il2_stats_random\src\stats\stats_whore.py", line 265, in stats_whore
    p.save()
  File "C:\distrib\il2_stats_random\src\stats\models.py", line 452, in save
    super().save(*args, **kwargs)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 796, in save
    force_update=force_update, update_fields=update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 824, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 889, in _save_table
    forced_update)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\base.py", line 939, in _do_update
    return filtered._update(values) > 0
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\query.py", line 654, in _update
    return query.get_compiler(self.db).execute_sql(CURSOR)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 1148, in execute_sql
    cursor = super(SQLUpdateCompiler, self).execute_sql(result_type)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 835, in execute_sql
    cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\distrib\il2_stats_random\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.DataError: \u041e\u0428\u0418\u0411\u041a\u0410:  \u0446\u0435\u043b\u043e\u0435 \u0432\u043d\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430
 
 
C:\distrib\il2_stats_random\src>pause
Press any key to continue . . .

 

 

Не могу понять, что ему не нравится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пожалуйста, войдите для комментирования

Вы сможете оставить комментарий после входа



Войти сейчас

×