Partkeepr: Ошибка установки при разогреве кеша (ошибка монолога)

Созданный на 23 сент. 2017  ·  20Комментарии  ·  Источник: partkeepr/PartKeepr

Системная информация

  • Версия PartKeepr: 1.3.0
  • Версия PHP 7.2

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

2017-09-22 15_28_28-partkeepr setup

move-to-wiki

Самый полезный комментарий

Вы можете исправить это быстро и грязно:
перейдите в файл -> /vendor/symfony/monolog-bundle/DependencyInjection/Configuration.php

вокруг строки 594 закомментируйте или удалите строку ниже:

// ->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && 1 !== count($v['handler']); })

добавьте следующую строку:
->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && (empty($v['handler']) || !is_string($v['handler'])); })

после этого установщик завершит установку, и вы получите доступ к приложению.

Все 20 Комментарий

Букашка:

Invalid configuration for path "monolog.handlers.main": Warning: count(): Parameter must be an array or an object that implements Countable

вызвано PHP 7.2, временное решение - понижение версии до PHP 7.1.

Ошибка находится в исходной версии Symfony, см .: https://github.com/symfony/monolog-bundle/issues/223

Что-нибудь исправить? Я работаю с linux Mint, и я не опытный пользователь Linux по установке php7.1 ... Linux Mint предлагает только стандарт 7.2 ...

Вы можете исправить это быстро и грязно:
перейдите в файл -> /vendor/symfony/monolog-bundle/DependencyInjection/Configuration.php

вокруг строки 594 закомментируйте или удалите строку ниже:

// ->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && 1 !== count($v['handler']); })

добавьте следующую строку:
->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && (empty($v['handler']) || !is_string($v['handler'])); })

после этого установщик завершит установку, и вы получите доступ к приложению.

Это все еще рекомендуемое исправление?

Да вроде так.
Исправление в symphony / monolog-bundle было выпущено в версии 3.1.2, а PartKeepr использует 2.4.
Чтобы иметь возможность использовать новую версию monolog-bundle, необходимо обновить symphony, а это нелегко (без довольно больших временных затрат).
Обходной путь от @erikvanberkum по-прежнему остается лучшим способом сделать это.

Попался. Может быть, есть автоматическое исправление как часть сценария установки?
То есть автоматическое исправление, заменяющее эту строку.

У меня возникла эта проблема при попытке установить Partkeepr на Raspberry Pi 3+

Я сдался, сделал чистую перепрошивку и переустановил ОС и Partkeepr с нуля после
эта страница - https://wiki.partkeepr.org/wiki/PartKeepr_on_Debian_%22Stretch%22

Я установил тайм-аут 130 вместо 120, а затем после страницы параметров базы данных я перешел на эту страницу
https://wiki.partkeepr.org/wiki/APC_Metadata_Caching

чтобы отредактировать yaml, и продолжил, и он установился нормально.

Какая из этих вилок имеет рабочий / последний код?
Я сейчас пробовал 13 из них и до сих пор не могу даже установить :(
Используя CentOS.

Моя информация:

кот / и т. д. / centos-release

CentOS Linux, выпуск 7.6.1810 (Core)

uname -a

Linux xxx.org 3.10.0-957.12.2.el7.x86_64 # 1 SMP Вт, 14 мая, 21:24:32 UTC 2019 x86_64 x86_64 x86_64 GNU / Linux

php -v

PHP 7.2.19 (cli) (построено: 29 мая 2019 г., 11:04:13) (NTS)
Авторские права (c) 1997-2018 Группа PHP
Zend Engine v3.2.0, Авторское право (c) 1998-2018 Zend Technologies

mysql --version

mysql Ver 15.1 Distrib 5.5.60-MariaDB, для Linux (x86_64) с использованием строки чтения 5.1

httpd -v

Версия сервера: Apache / 2.4.6 (CentOS)
Сервер построен: 24 апреля 2019 г., 13:45:48

Ошибки получаю:

[Сб, 01 июня, 00:22: 58.384109 2019] [php7: warn] [pid 13807] [client 155.4.14.39:56332] Предупреждение PHP: require_once (/ webdata1 / partkeepr / web /../ app / bootstrap.php.cache ): не удалось открыть поток: нет такого файла или каталога в /webdata1/partkeepr/web/app.php в строке 6, ссылка: http://partkeepr.ddns.net/setup/index.html
[Сб, 01 июня, 00:22: 58.384190 2019] [php7: error] [pid 13807] [client 155.4.14.39:56332] Неустранимая ошибка PHP: require_once (): требуется сбой открытия '/webdata1/partkeepr/web/../ app / bootstrap.php.cache '(include_path ='.: / usr / share / pear: / usr / share / php ') в /webdata1/partkeepr/web/app.php в строке 6, ссылка: http: // partkeepr.ddns.net/setup/index.html
[Сб, 01 июня, 00:22: 58.394956 2019] [php7: warn] [pid 13797] [client 155.4.14.39:56331] Предупреждение PHP: require_once (/ webdata1 / partkeepr / web /../ app / bootstrap.php.cache ): не удалось открыть поток: нет такого файла или каталога в /webdata1/partkeepr/web/app.php в строке 6, ссылка: http://partkeepr.ddns.net/setup/index.html
[Сб, 01 июня, 00:22: 58.395025 2019] [php7: error] [pid 13797] [client 155.4.14.39:56331] Неустранимая ошибка PHP: require_once (): требуется сбой открытия '/webdata1/partkeepr/web/../ app / bootstrap.php.cache '(include_path ='.: / usr / share / pear: / usr / share / php ') в /webdata1/partkeepr/web/app.php в строке 6, ссылка: http: // partkeepr.ddns.net/setup/index.html
[Сб, 01 июня 00:22: 58.565949 2019] [php7: warn] [pid 13799] [client 155.4.14.39:56334] Предупреждение PHP: require_once (/ webdata1 / partkeepr / web /../ app / bootstrap.php.cache ): не удалось открыть поток: такого файла или каталога нет в /webdata1/partkeepr/web/app.php в строке 6, ссылка: http://partkeepr.ddns.net/setup/index.html
[Сб, 01 июня, 00:22: 58.566015 2019] [php7: error] [pid 13799] [client 155.4.14.39:56334] Неустранимая ошибка PHP: require_once (): требуется сбой открытия '/webdata1/partkeepr/web/../ app / bootstrap.php.cache '(include_path ='.: / usr / share / pear: / usr / share / php ') в /webdata1/partkeepr/web/app.php в строке 6, ссылка: http: // partkeepr.ddns.net/setup/index.html4

Я недавно установил Partkeepr и не получил этого сообщения. Таким образом, я закрываю его. Если кто-то столкнется с этим, мы откроемся снова.

@christianlupus Я получил ошибку и

Получил эту проблему. Исправлено с обновлением до monolog-bundle> 3.1.0
композитору требуется symfony / monolog- bundle: 3.1. * починил это

@christianlupus Я думаю, что это хороший

Я могу поместить это в документы (по крайней мере, в промежуточные), но я сомневаюсь, что это действительно хорошая идея. Вы меняете часть пакета с 2.7 на 3.1. Это серьезное изменение версии, и я не знаю о каких-либо побочных эффектах, которые оно может иметь или не иметь.
Фактически вы заставляете пользователей частично обновлять symphony 3. У меня был очень плохой опыт работы с такими зомби-программами смешанных версий ... Сейчас они могут не сработать, но могут выйти из строя в любой момент. Я бы предпочел не давать официальных советов по поводу такой системы, о которой мы оба мало что знаем. Моя первая проверка не дала никаких сломанных зависимостей, но это было сделано только быстро вручную.

@baradhili У вас есть дополнительная информация или знание, что это безопасный совет?

@christianlupus ах не @erikvanberkum

<<
Вы можете исправить это быстро и грязно:
перейти в файл -> /vendor/symfony/monolog-bundle/DependencyInjection/Configuration.php

вокруг строки 594 закомментируйте или удалите строку ниже:

// ->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && 1 !== count($v['handler']); })

добавьте следующую строку:
->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && (empty($v['handler']) || !is_string($v['handler'])); })

после этого установщик завершит установку, и вы получите доступ к приложению.

>

Ах, хорошо, понятно. Я буду держать его открытым, пока не напишу в документацию.

У меня такая же проблема с этим .. и я не могу найти способ установить старую версию php ... ?? могу я получить помощь ..
эта проблема:

Недопустимая конфигурация для пути "monolog.handlers.main": Предупреждение: count (): Параметр должен быть массивом или объектом, который реализует Countable

я попытался исправить это:

перейдите в файл -> /vendor/symfony/monolog-bundle/DependencyInjection/Configuration.php

вокруг строки 594 закомментируйте или удалите строку ниже:

// -> ifTrue (function ($ v) {return ('finger_crossed' === $ v ['type'] || 'buffer' === $ v ['type'] || 'filter' === $ v ['тип']) && 1! == count ($ v ['обработчик']);})

добавьте следующую строку:
-> ifTrue (function ($ v) {return ('finger_crossed' === $ v ['type'] || 'buffer' === $ v ['type'] || 'filter' === $ v ['тип']) && (пусто ($ v ['обработчик']) ||! is_string ($ v ['обработчик']));})

но просто получите эту ошибку:
err

@stegl, пожалуйста, откройте новую проблему с запросом помощи, чтобы не сбивать эту проблему здесь. Тем не менее, вы можете ссылаться на это. Большое тебе спасибо.

@christianlupus ах не @erikvanberkum

<<
Вы можете исправить это быстро и грязно:
перейти в файл -> /vendor/symfony/monolog-bundle/DependencyInjection/Configuration.php

вокруг строки 594 закомментируйте или удалите строку ниже:

// ->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && 1 !== count($v['handler']); })

добавьте следующую строку:
->ifTrue(function ($v) { return ('fingers_crossed' === $v['type'] || 'buffer' === $v['type'] || 'filter' === $v['type']) && (empty($v['handler']) || !is_string($v['handler'])); })

после этого установщик завершит установку, и вы получите доступ к приложению.

>

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

«Неверный ответ от сервера»

Это исправление еще действует?

@xadonxander названное «исправление» никогда не было исправлением. Это просто взлом кода зависимости, что является явной ошибкой.

Итак, чтобы еще раз прояснить: ничего не меняйте в папке /vendor .

А пока лучшее решение - использовать PHP 7.0 или 7.1. Тогда ошибка вообще не должна появляться. Кроме того, нам окончательно нужно обновить, см. # 1083.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

integralmedia picture integralmedia  ·  4Комментарии

HolgerHeckeroth picture HolgerHeckeroth  ·  4Комментарии

kgabryszewska picture kgabryszewska  ·  8Комментарии

JoarGjersund picture JoarGjersund  ·  12Комментарии

baradhili picture baradhili  ·  17Комментарии