eveseat / seat

🌀✳️ SeAT: A Simple, EVE Online API Tool and Corporation Manager
https://eveseat.github.io/docs/
GNU General Public License v2.0
434 stars 142 forks source link

There is a problem when using redis with password #649

Closed KagurazakaNyaa closed 4 years ago

KagurazakaNyaa commented 4 years ago
Package Name Local Version Latest Github
Api 4.0.0 4.0.0
Console 4.0.4 4.0.4
Eveapi 4.1.1 4.1.1
Notifications 4.0.2 4.0.2
Web 4.1.6 4.1.6
Services 4.0.0 4.0.0
warlof commented 4 years ago

Hi,

that's odd, php-redis is now the default driver used by Laravel. can you do the following two things for me ?

1) php artisan tinker will open you a debug console 2) config('database.redis') will print you some information that you can paste here (exclude password if you have one) 3) get_loaded_extensions() will show you a list of installed extensions

once done, leave the console using exit

KagurazakaNyaa commented 4 years ago
root@waw-eve:/var/www/seat# sudo -u www-data php artisan tinker
Psy Shell v0.9.12 (PHP 7.3.19-1~deb10u1 — cli) by Justin Hileman
>>> config('database.redis')
=> [
     "client" => "phpredis",
     "options" => [
       "cluster" => "redis",
       "prefix" => "seat_database_",
     ],
     "default" => [
       "url" => null,
       "host" => "database",
       "password" => "redacted",
       "port" => "6379",
       "database" => 0,
     ],
     "cache" => [
       "url" => null,
       "host" => "database",
       "password" => "redacted",
       "port" => "6379",
       "database" => 1,
     ],
     "horizon" => [
       "url" => null,
       "host" => "database",
       "password" => "redacted",
       "port" => "6379",
       "database" => 0,
       "options" => [
         "prefix" => "horizon:",
       ],
     ],
   ]
>>> get_loaded_extensions()
=> [
     "Core",
     "date",
     "libxml",
     "openssl",
     "pcre",
     "zlib",
     "filter",
     "hash",
     "pcntl",
     "Reflection",
     "SPL",
     "session",
     "sodium",
     "standard",
     "mysqlnd",
     "PDO",
     "xml",
     "bcmath",
     "bz2",
     "calendar",
     "ctype",
     "curl",
     "dom",
     "enchant",
     "mbstring",
     "fileinfo",
     "ftp",
     "gd",
     "geoip",
     "gettext",
     "gmp",
     "iconv",
     "igbinary",
     "imagick",
     "imap",
     "interbase",
     "intl",
     "json",
     "ldap",
     "exif",
     "mysqli",
     "PDO_Firebird",
     "pdo_mysql",
     "Phar",
     "posix",
     "readline",
     "redis",
     "shmop",
     "SimpleXML",
     "soap",
     "sockets",
     "sysvmsg",
     "sysvsem",
     "sysvshm",
     "tokenizer",
     "uuid",
     "wddx",
     "xmlreader",
     "xmlrpc",
     "xmlwriter",
     "xsl",
     "zip",
     "Zend OPcache",
   ]
KagurazakaNyaa commented 4 years ago

There is the compose.lock of this instance.

KagurazakaNyaa commented 4 years ago

In addition, after connecting to the redis instance via redis-cli and using the monitor command, I found that the redis key belonging to SeAT was updated and read normally. At the same time, in the use of SeAT, apart from a large number of error logs, no other errors caused by redis were found.

warlof commented 4 years ago

can you add output of all your installed composer package with composer show at seat root directory ?

thank you

KagurazakaNyaa commented 4 years ago
root@waw-eve:/var/www/seat# sudo -u www-data composer show
almasaeed2010/adminlte                  v3.0.5            AdminLTE - admin control panel and dashboard...
brick/math                              0.8.17            Arbitrary-precision arithmetic library
cakephp/chronos                         1.3.0             A simple API extension for DateTime.
coduo/php-humanizer                     3.0.2             Humanize values that are readable only for d...
components/font-awesome                 5.14.0            Font Awesome, the iconic SVG, font, and CSS ...
darkaonline/l5-swagger                  6.0.5             Swagger integration to Laravel 5
datatables/datatables                   1.10.21           DataTables is a plug-in for the jQuery Javas...
denngarr/seat-fitting                   4.0.x-dev 8cf28ba Module to check fittings per character
denngarr/seat-srp                       4.0.0-alpha       A module for SeAT that tracks SRP requests
dnoegel/php-xdg-base-dir                v0.1.1            implementation of xdg base directory specifi...
doctrine/annotations                    1.10.4            Docblock Annotations Parser
doctrine/cache                          1.10.2            PHP Doctrine Cache library is a popular cach...
doctrine/dbal                           2.10.2            Powerful PHP database abstraction layer (DBA...
doctrine/event-manager                  1.1.1             The Doctrine Event Manager is a simple PHP e...
doctrine/inflector                      2.0.3             PHP Doctrine Inflector is a small library th...
doctrine/lexer                          1.2.1             PHP Doctrine Lexer parser library that can b...
dragonmantank/cron-expression           v2.3.0            CRON for PHP: Calculate the next or previous...
egulias/email-validator                 2.1.19            A library for validating emails against seve...
erusev/parsedown                        1.7.4             Parser for Markdown.
eveseat/api                             4.0.0             SeAT API Interface
eveseat/console                         4.0.4             SeAT Console Components
eveseat/eseye                           2.2.2             A Standalone PHP ESI (EVE Swagger Interface)...
eveseat/eveapi                          4.1.1             SeAT EVE API Integration
eveseat/notifications                   4.0.2             SeAT Notifications Components
eveseat/services                        4.0.0             SeAT Services Components
eveseat/web                             4.1.6             SeAT Web Interface
fgrosse/phpasn1                         v2.1.1            A PHP Framework that allows you to encode an...
fideloper/proxy                         4.4.0             Set trusted proxies for Laravel
guzzlehttp/guzzle                       6.5.5             Guzzle is a PHP HTTP client library
guzzlehttp/promises                     v1.3.1            Guzzle promises library
guzzlehttp/psr7                         1.6.1             PSR-7 message implementation that also provi...
intervention/image                      2.5.1             Image handling and manipulation library with...
jakub-onderka/php-console-color         v0.2             
jakub-onderka/php-console-highlighter   v0.4              Highlight PHP code in terminal
kassie/calendar                         4.0.0             Calendar plugin for SeAT.
laravel/framework                       v6.18.35          The Laravel Framework.
laravel/horizon                         v3.7.2            Dashboard and code-driven configuration for ...
laravel/slack-notification-channel      v2.1.0            Slack Notification Channel for laravel.
laravel/socialite                       v4.4.1            Laravel wrapper around OAuth 1 & OAuth 2 lib...
laravel/tinker                          v1.0.10           Powerful REPL for the Laravel framework.
laravelcollective/html                  v6.1.2            HTML and Form Builders for the Laravel Frame...
lasserafn/php-initial-avatar-generator  4.1.1             A package to generate avatars with initials ...
lasserafn/php-initials                  3.0               A package to generate initials in PHP
lasserafn/php-string-script-language    0.1               Detect language/encoding of a string in PHP
league/commonmark                       1.5.4             Highly-extensible PHP Markdown parser which ...
league/flysystem                        1.1.3             Filesystem abstraction: Many filesystems, on...
league/mime-type-detection              1.4.0             Mime-type detection for Flysystem
league/oauth1-client                    1.7.0             OAuth 1.0 Client Library
maatwebsite/excel                       3.1.21            Supercharged Excel exports and imports in La...
maennchen/zipstream-php                 2.1.0             ZipStream is a library for dynamically strea...
markbaker/complex                       1.4.8             PHP Class for working with complex numbers
markbaker/matrix                        1.2.0             PHP Class for working with matrices
meyfa/php-svg                           v0.9.1            Read, edit, write, and render SVG files with...
monolog/monolog                         2.1.1             Sends your logs to files, sockets, inboxes, ...
myclabs/php-enum                        1.7.6             PHP Enum implementation
nesbot/carbon                           2.38.0            An API extension for DateTime that supports ...
nikic/php-parser                        v4.9.0            A PHP parser written in PHP
opis/closure                            3.5.6             A library that can be used to serialize clos...
overtrue/pinyin                         4.0.6             Chinese to pinyin translator.
paragonie/random_compat                 v9.99.99          PHP 5.x polyfill for random_bytes() and rand...
phpoffice/phpspreadsheet                1.14.1            PHPSpreadsheet - Read, Create and Write Spre...
phpoption/phpoption                     1.7.5             Option Type for PHP
predis/predis                           v1.1.3            Flexible and feature-complete Redis client f...
psr/container                           1.0.0             Common Container Interface (PHP FIG PSR-11)
psr/http-client                         1.0.1             Common interface for HTTP clients
psr/http-factory                        1.0.1             Common interfaces for PSR-7 HTTP message fac...
psr/http-message                        1.0.1             Common interface for HTTP messages
psr/log                                 1.1.3             Common interface for logging libraries
psr/simple-cache                        1.0.1             Common interfaces for simple caching
psy/psysh                               v0.9.12           An interactive shell for modern PHP.
ralouphie/getallheaders                 3.0.3             A polyfill for getallheaders.
ramsey/uuid                             3.9.3             Formerly rhumsaa/uuid. A PHP 5.4+ library fo...
s9e/regexp-builder                      1.4.4             Single-purpose library that generates regula...
s9e/sweetdom                            1.0.1             Syntactic sugar for the DOM API with a focus...
s9e/text-formatter                      2.7.4             Multi-purpose text formatting and markup lib...
socialiteproviders/manager              v3.5              Easily add new or override built-in provider...
spomky-labs/base64url                   v2.0.2            Base 64 URL Safe Encoding/Decoding PHP Library
swagger-api/swagger-ui                  v3.32.4            Swagger UI is a collection of HTML, Javascr...
swiftmailer/swiftmailer                 v6.2.3            Swiftmailer, free feature-rich PHP mailer
symfony/config                          v4.4.11           Symfony Config Component
symfony/console                         v4.4.11           Symfony Console Component
symfony/css-selector                    v5.1.3            Symfony CssSelector Component
symfony/debug                           v4.4.11           Symfony Debug Component
symfony/error-handler                   v4.4.11           Symfony ErrorHandler Component
symfony/event-dispatcher                v4.4.11           Symfony EventDispatcher Component
symfony/event-dispatcher-contracts      v1.1.9            Generic abstractions related to dispatching ...
symfony/filesystem                      v5.1.3            Symfony Filesystem Component
symfony/finder                          v4.4.11           Symfony Finder Component
symfony/http-foundation                 v4.4.11           Symfony HttpFoundation Component
symfony/http-kernel                     v4.4.11           Symfony HttpKernel Component
symfony/mime                            v5.1.3            A library to manipulate MIME messages
symfony/polyfill-ctype                  v1.18.1           Symfony polyfill for ctype functions
symfony/polyfill-iconv                  v1.18.1           Symfony polyfill for the Iconv extension
symfony/polyfill-intl-idn               v1.18.1           Symfony polyfill for intl's idn_to_ascii and...
symfony/polyfill-intl-normalizer        v1.18.1           Symfony polyfill for intl's Normalizer class...
symfony/polyfill-mbstring               v1.18.1           Symfony polyfill for the Mbstring extension
symfony/polyfill-php70                  v1.18.1           Symfony polyfill backporting some PHP 7.0+ f...
symfony/polyfill-php72                  v1.18.1           Symfony polyfill backporting some PHP 7.2+ f...
symfony/polyfill-php73                  v1.18.1           Symfony polyfill backporting some PHP 7.3+ f...
symfony/polyfill-php80                  v1.18.1           Symfony polyfill backporting some PHP 8.0+ f...
symfony/process                         v4.4.11           Symfony Process Component
symfony/routing                         v4.4.11           Symfony Routing Component
symfony/service-contracts               v2.1.3            Generic abstractions related to writing serv...
symfony/translation                     v4.4.11           Symfony Translation Component
symfony/translation-contracts           v2.1.3            Generic abstractions related to translation
symfony/var-dumper                      v4.4.11           Symfony mechanism for exploring and dumping ...
symfony/yaml                            v4.4.11           Symfony Yaml Component
tijsverkoyen/css-to-inline-styles       2.2.3             CssToInlineStyles is a class that enables yo...
twbs/bootstrap                          v4.5.2            The most popular front-end framework for dev...
vlucas/phpdotenv                        v3.6.7            Loads environment variables from `.env` to `...
web-token/jwt-checker                   v2.2.0            Checker component of the JWT Framework.
web-token/jwt-core                      v2.2.0            Core component of the JWT Framework.
web-token/jwt-easy                      v2.2.0            Easy toolset to use the JWT Framework.
web-token/jwt-encryption                v2.2.0            Encryption component of the JWT Framework.
web-token/jwt-signature                 v2.2.0            Signature component of the JWT Framework.
web-token/jwt-signature-algorithm-ecdsa v2.2.0            ECDSA Based Signature Algorithms the JWT Fra...
web-token/jwt-signature-algorithm-hmac  v2.2.0            HMAC Based Signature Algorithms the JWT Fram...
web-token/jwt-signature-algorithm-rsa   v2.2.0            RSA Based Signature Algorithms the JWT Frame...
yajra/laravel-datatables-buttons        v4.9.3            Laravel DataTables Buttons Plugin.
yajra/laravel-datatables-html           v4.30.0           Laravel DataTables HTML builder plugin for L...
yajra/laravel-datatables-oracle         v9.10.2           jQuery DataTables API for Laravel 4|5|6|7
zircote/swagger-php                     3.0.4             swagger-php - Generate interactive documenta...
wfjsw commented 4 years ago

Did you restart the horizon daemon after doing any changes to the project files?

KagurazakaNyaa commented 4 years ago

Did you restart the horizon daemon after doing any changes to the project files?

Of course, the supervisor service will be restarted after every modification.

wfjsw commented 4 years ago

Fine. Please enter php artisan tinker, run resolve('redis.connection') and paste the result here.

KagurazakaNyaa commented 4 years ago
root@waw-eve:/var/www/seat# sudo -u www-data php artisan tinker
Psy Shell v0.9.12 (PHP 7.3.19-1~deb10u1 — cli) by Justin Hileman
>>> resolve('redis.connection')
=> Illuminate\Redis\Connections\PhpRedisConnection {#4862}
wfjsw commented 4 years ago

你这个里边有很多怪事,首先eseye如果不改改vendor/里的源码的话是没有rediscache用的。但是这个cache实际上没什么用,建议直接关掉。

另外现在我很难相信你真的正确的重启了horizon。试试kill掉再开?

KagurazakaNyaa commented 4 years ago

你这个里边有很多怪事,首先eseye如果不改改vendor/里的源码的话是没有rediscache用的。但是这个cache实际上没什么用,建议直接关掉。

另外现在我很难相信你真的正确的重启了horizon。试试kill掉再开?

在使用systemctl stop supervisor并使用kill -9终止了所有的horizon进程之后,重新启动supervisor后似乎问题修复了,但是为什么会出现此问题呢?

wfjsw commented 4 years ago

难道不是 supervisorctl restart horizon 么( 不过我觉得你都systemctl了不如直接让systemd来负责启动horizon

KagurazakaNyaa commented 4 years ago

难道不是 supervisorctl restart horizon 么(

之前是使用supervisorctl restart all,然而问题持续,直到停止supervisor服务进程并手动终止两个horizon进程后重新启动

wfjsw commented 4 years ago

那可能是没杀干净

KagurazakaNyaa commented 4 years ago

那可能是没杀干净

有可能,难道这个horizon进程是之前seat3遗留下来的吗......