Κοινά προβλήματα και ενημέρωση του Redmine
Καθώς τόσο το Redmine όσο και το Easy Redmine είναι Ανοικτού Κώδικα και είναι περισσότερο ή λιγότερο από πλατφόρμες, μπορεί να προκύψει προβλήματα εγκατάστασης και αναβάθμισης λόγω διαφορετικών ρυθμίσεων εγκαταστάσεων, εκδόσεων λογισμικού ή προσθέτων. Εργαζόμαστε σκληρά για να εντοπίσουμε αυτά τα πιο συνηθισμένα προβλήματα προκειμένου να σας βοηθήσουμε στην επίλυσή τους.
Κατά την ενημέρωσή της ένα κείμενο ένα μήνυμα σφάλματος που περιέχει το "Έχετε σφάλμα στη σύνταξη SQL σας· ελέγξτε το εγχειρίδιο που αντιστοιχεί στην έκδοση του διακομιστή MySQL σας για τη σωστή σύνταξη που πρέπει να χρησιμοποιήσετε κοντά ..." εμφανίζεται στο αρχείο καταγραφής.
Αιτία
Αυτό σημαίνει ότι η βάση δεδομένων σας είναι παλαιά και δεν μπορεί να λειτουργήσει με το αίτημα που στέλνει η εφαρμογή μας. Απλά δεν το κατανοεί.
Λύση
Πρέπει να ενημερώσετε τη βάση δεδομένων σας.
Πώς να ενημερώσετε τη βάση δεδομένω
Έχετε εγκαταστήσει ή ενημερώσει το Easy Redmine υπό χρήστη με ανεπαρκείς δικαιώματα, μην ακολουθώντας την ισχυρή μας σύσταση στις οδηγίες (τουλάχιστον μία φορά στο παρελθόν).
- Διορθώστε τα δικαιώματα με τις εντολές chgrp και chown σύμφωνα με τις ρυθμίσεις του διακομιστή (π.χ. chgrp -R public_html www-data)
- Εκτελέστε ξανά την εγκατάσταση με την εντολή δέσμη exec easyproject γκανιότα: εγκατάσταση RAILS_ENV = παραγωγή η οποία θα αδειάσει την προσωρινή μνήμη (αν εκτελείται από τον ριζικό χρήστη, δεν είναι επιτυχής)
- Ενεκκινήστε τον διακομιστή
Αν χρησιμοποιείτε εικονική μηχανή που παρέχεται από την εφαρμογή Easy Software, υπό τον χρήστη εύκολος:
sudo chown -R εύκολο / home / easy / current
(σε παλαιότερες μηχανές - sudo chown -R easy /srv/easyredmine/public_html)
sudo chgrp -R εύκολο / home / easy / current
(σε παλαιότερες μηχανές - sudo chgrp -R easy /srv/easyredmine/public_html)
cd / home / easy / current
(σε παλαιότερες μηχανές - cd /srv/easyredmine/public_html)
δέσμη exec easyproject γκανιότα: εγκατάσταση RAILS_ENV = παραγωγή
επανεκκίνηση της υπηρεσίας sudo puma@your.domain.name
Θυμηθείτε να ορίσετε τα δικαιώματα για όλους τους απαραίτητους φακέλους.
Εδώ είναι μερικές υποδείξεις για το τι μπορείτε να κάνετε να αντιμετωπίσετε το σφάλμα 500.
- τρέξτε το Απλός έλεγχος απαιτήσεων διακομιστή και προσπαθήστε να επιδιορθώσετε τις αποτυχημένες επικυρώσεις
- δημιουργήστε αντίγραφο ασφαλείας της βάσης δεδομένων σας
- Κατεβάστε το πιο πρόσφατο πακέτο από τη Ζώνη Πελάτη
- βεβαιωθείτε ότι ο webserver έχει Πλήρη πρόσβαση δημόσια, αρχεία, ημερολόγιο, tmp φακέλους
- τρέξτε δέσμη εγκαταστήσετε --without δοκιμή ανάπτυξης
- τρέξτε δέσμη exec easyproject γκανιότα: εγκατάσταση RAILS_ENV = παραγωγή
- επανεκκινήστε τον εξυπηρετητή
- διαγράψτε πρόσθετα Redmine από τρίτους (επίσης από τη βάση δεδομένων)
- επικοινωνήστε μαζί μας στο support@easyredmine.com και επισυνάψτε το αρχείο log/production.log
Εάν έχετε ρυθμιστεί χαμηλό χρονικό διάστημα, αυτό το σφάλμα θα εμφανιστεί σε:
- μεγάλες εξαγωγές
- υπερφόρτωση του διακομιστή
- εκτελείται εργασιών rake από το γραφικό περιβάλλον
Όριο συνδέσεων MySQL
Βεβαιωθείτε ότι έχετε επιτρεπόμενο ένα επαρκές αριθμό συνδέσεων στο MySQL. Εξαρτάται από τον αριθμό των χρηστών, αλλά πρέπει να έχετε τουλάχιστον 100 επιτρεπόμενες.
Αυτό το σφάλμα συμβαίνει από την έκδοση 2018 1.2 (πλατφόρμα 04.00 και νεότερη)
Σφάλμα κατά την αναβάθμιση εγκατάστασης που περιέχει κάποια από τα παρακάτω.
[!] Παρουσιάστηκε σφάλμα κατά την ανάλυση του `Gemfile`:
[!] Παρουσιάστηκε σφάλμα κατά την ανάλυση του `Gemfile`: δεν είναι δυνατή η φόρτωση του αρχείου --
# plugin 'rys-bundler', github: 'easysoftware / rys-bundler', κλάδος: 'master'> Plugin.hook ('rys-gemfile', self)
Ο Bundler δεν μπορεί να συνεχίσει.
Αυτό προκαλείται από ξεπερασμένη έκδοση του εγκαταστάτη redmine.
Λύση:
Πριν εγκαταστήσετε την αναβάθμιση
$ gem install redmine-installer
Αυτό το πρόβλημα προκύπτει όταν χρησιμοποιείτε ένα επίθημα στο URL του Easy Redmine σας, για παράδειγμα: https://company.com/easyredmine/
Σε αυτήν την περίπτωση, πρέπει να βεβαιωθείτε ότι έχετε τη μεταβλητή RAILS_RELATIVE_URL_ROOT ρυθμισμένη στο σωστό επίθημα σας /easyredmine
Bitnami:
- Δημιουργήστε ένα επιπλέον αρχείο ρυθμίσεων config/additional_environment.rb
- config.action_controller.relative_url_root = "/ easyredmine"
- έπειτα προετοιμάστε τους πόρους (rake easyproject:install RAILS_ENV=production) και επανεκκινήστε τον διακομιστή
Βεβαιωθείτε ότι έχει εγκατασταθεί και λειτουργεί το wkhtmltopdf ( το wkhtmltopdf χρειάζεται διακομιστής X ή άλλη εξομοίωση)
Δοκιμάστε το χρησιμοποιώντας: "wkhtmltopdf google.com google.pdf"
Προσθέστε στη διαμόρφωση του διαμεσολαβητή σας:
proxy_set_header X-Forwarded-Proto https
Ελέγξτε τη διαμόρφωση cron. Είναι πολύ σημαντικό ότι τα καθήκοντα γκανιότας είναι ΔΕΝ τρέχει από τη ρίζα. Θα προκαλέσει αποτυχία λόγω ανεπαρκών δικαιωμάτων.
Ας υποθέσουμε ότι εκτελείτε το Easy Redmine κάτω από το χρήστη εύκολη. Οι εντολές είναι:
Προβολή ενεργών crons crontab -u εύκολο -l
Επεξεργασία crontab -u εύκολο -ε
Εφαρμογή αλλαγών υπηρεσία sudo cron reload
Παράδειγμα για την εκτέλεση cron κάθε 5 λεπτά:
* / 5 * * * * /home/easy/scripts/easy_scheduler.sh &> / dev / null
#! / bin / bash -l
LOG_FILE = "/ home / εύκολο / τρέχον / log / easy_scheduler_rake.log"
echo "$ (ημερομηνία '+% Y-% m-% d% H:% M:% S') έναρξη τσουγκράνας" >> $ {LOG_FILE}
cd / home / easy / current && bundle exec rake easyproject: scheduler: run_tasks RAILS_ENV = παραγωγή >> $ {LOG_FILE}
echo "$ (ημερομηνία '+% Y-% m-% d% H:% M:% S') τελική τσουγκράνα" >> $ {LOG_FILE}
/home/easy/scripts/easy_scheduler.sh πρέπει να είναι εκτελέσιμο:
sudo chmod + x /home/easy/scripts/easy_scheduler.sh
Μη διστάσετε να ψάξετε στο διαδίκτυο για ένα ακριβέστερο εγχειρίδιο για να ρυθμίσετε το cron στον server σας. Δεν είναι απαραίτητη η λειτουργία Easy Redmine.
Όταν ενημερώσετε το Easy Redmine στην πλατφόρμα των Windows και αντιμετωπίζετε ένα μήνυμα σφάλματος ExecJs :: RuntimeError
Το μόνο που πρέπει να κάνετε είναι να εγκαταστήσετε το NODEJS στο σύστημα σας για τη σωστή ενημέρωση.
Εάν η εγκατάσταση αποτύχει, χειροκίνητα:
$ update update
$ Rake db: μεταναστεύσουν
$ rake redmine: plugins: μεταναστεύουν
Βεβαιωθείτε ότι ο διακομιστής σας υποστηρίζει το πραγματικό μέγεθος της διεύθυνσης URL
Βεβαιωθείτε ότι ΔΕΝ χρησιμοποιείτε τον διακομιστή ιστού Webrick!
- βεβαιωθείτε ότι έχετε την τελευταία έκδοση του webserver και του Ruby
- αναδιαμορφώστε τα αργά ερωτήματα φίλτρου για να δείτε λιγότερα πεδία
- επαναφέρετε το CRON σας ώστε να μην εκκινεί τόσο συχνά
- ανατρέξτε σε αυτήν τη μελέτη περίπτωσης - Επιτάχυνση του Rails χωρίς να αγγίξετε τον κώδικα Ruby
- ελέγξτε τη διαμόρφωσή σας - https://www.easyredmine.com/resources/installation/1885-recommended-optimal-configuration-of-easy-redmine-server
Αντιγράψτε τον φάκελο αρχείων από τον παλιό σας Redmine.
Μπορείτε να την προεπιλεγμένη τοποθεσία των αρχείων στο αρχείο διαμόρφωσης του Redmine ή να χρησιμοποιήσετε έναν σύμβολο σύνδεσμο. Οι αποθηκευτικοί χώροι δικτύου LAN ή βάσει cloud για συνημμένα δεν συνιστώνται λόγω προβλημάτων αξιοπιστίας.
Διαμόρφωση:
./config/configuration.yml
# Απόλυτη διαδρομή προς τον φάκελο όπου αποθηκεύονται τα συνημμένα.
# Η προεπιλογή είναι ο φάκελος 'files' στην περίπτωση εγκατάστασης του Redmine.
# Το EasyRedmine σας πρέπει να έχει δικαιώματα ανάγνωσης/εγγραφής σε αυτόν τον φάκελο.
# Παραδείγματα: attachments_storage_path: / var / www / redmine / αρχεία
Επίλυση προβλημάτων:
Εάν δεν μπορείτε να ανοίξετε ένα συνημμένο αρχείο, δείτε το αρχείο ./log/production.log για συνηθισμένα σφάλματα:
Δεν είναι δυνατή η αποστολή του συνημμένου, το αρχείο /var/www/redmine/files/2015/08/150805095407_xxx.PNG δεν υπάρχει ή δεν είναι αναγν
Βεβαιωθείτε ότι ο διακομιστής σας έχει τα φακέλους Πλήρης πρόσβαση δημόσιος, αρχεία, καταγραφές, προσωρινά
Οι νέες δεσμεύσεις στο αποθετήριο σας δεν αντανακλώνται στο Easy Redmine εκτός αν ανακτώνται από την εφαρμογή. Πρέπει να ορίσετε webhooks στον πελάτης του αποθετηρίου σας (github, gitlab, TortoiseSVN,...) με πληροφορίες για την περίπτωση του Easy Redmine.
- Μεταβείτε στις ρυθμίσεις διαχείρισης >> ρυθμίσεις >> αποθετήρια
- Ενεργοποιήστε το WS για τη διαχείριση του αποθετηρίου
- Δημιουργήστε ένα κλειδί API
- Αποθηκεύστε
- Μεταβείτε στον πελάτη του αποθετηρίου σας
- Προσθέστε ένα webhook
Ας πούμε ότι ο ιστορικός σας είναι easyredmine.company.com
Για git - https://easyredmine.company.com/ sys / git_fetcher
ή https://easyredmine.company.com/ sys / git_fetcher? key =[API key]
- ανάλογα με τη ρύθμιση του πελάτη, μπορεί να χρησιμοποιηθεί μόνο μια διεύθυνση URL ή το κλειδί σε διαφορετικό πεδίο
Για SVN - https://easyredmine.company.com/ sys / fetch_changesets
ή https://easyredmine.company.com/ sys / fetch_changesets? key =[API key]
Από το σημείο 5, είναι όλα στον πελάτη του αποθετηρίου και δεν σχετίζονται με τις ρυθμίσεις του Easy Redmine. Είναι κάτι που πρέπει να επαληθεύσετε μετά από μια καθαρή εγκατάσταση ή αναβάθμιση από το Redmine.
Όταν ρυθμίζετε τον τομέα του Easy Redmine σας, βεβαιωθείτε ότι χρησιμοποιείτε τουλάχιστον έναν τομέα πρώτου επιπέδου, για παράδειγμα http://myeasyredmine.com αντί για απλά http://myeasyredmine . Ορισμένοι περιηγητές μπορούν να έχουν πρόβλημα με την πρόσβασή τους.
Μεταβείτε στην Διαχείριση >> Ρυθμίσεις >> Ειδοποιήσεις μέσω email
και επαληθεύστε ότι η διεύθυνση ΑΠΟ είναι σωστή.
Θα πρέπει να είναι η ίδια (ή τουλάχιστον από τον ίδιο διακομιστή SMTP) όπως στο αρχείο ρυθμίσεων. Διαφορετικά, ορισμένες υπηρεσίες email (gmail, yahoo, κ.λπ.) μπορεί να απορρίψει τις ειδοποιήσεις.
ορίστε τις ρυθμίσεις σας σύμφωνα με αυτό το άρθρο στη Βάση Γνώσεων.
Για να επιβεβαιώσετε ότι οι ρυθμίσεις είναι σωστές, δοκιμάστε να ελέγξετε αν μπορείτε να συνδεθείτε στον διακομιστή αλληλογραφίας από τον διακομιστή Easy Redmine χρησιμοποιώντας το telnet.
telnet το.δικό.σας.εδώ αριθμός_θύρας_εδώ (
Όταν προσπαθείτε να κάνετε εξαγωγή PDF που οδηγεί σε σφάλμα (ή δεν συμβαίνει τίποτα). Το αρχείο καταγραφής παραγωγής θα καταγράφει παρόμοια σφάλματα με
Errno::EPIPE (Σπασμένος σωλήνας) ή wkhtmltopdf: δεν είναι δυνατή η σύνδεση με τον διακομιστή X
Προκαλείται από προβλήματα με την εξαγωγή του στοιχείου wkhtmltopdf
Εδώ είναι οι προτεινόμενες λύσεις.
Εξυπηρετητής χωρίς κεφαλή
Αποκτήστε την απαιτούμενη έκδοση του wkhtmltopdf από http://wkhtmltopdf.org/downloads.html
Παράδειγμα (πρέπει να εργαστείτε με τις λεπτομέρειες του δικού σας περιβάλλοντος):
- sudo apt-get εγκατάσταση xvfb xauth
- wget https://bitbucket.org/wkhtmltopdf/wkhtmltopdf/downloads/wkhtmltox-0.13.0-alpha-7b36694_linux-jessie-amd64.deb
- sudo dpkg -i wkhtmltox-0.13.0-alpha-7b36694_linux-jessie-amd64.deb
- sudo apt-get -f εγκατάσταση
- sudo mv / usr / local / bin / wkhtmltopdf / usr / local / bin / xwkhtmltopdf
- echo 'exec xvfb-run -a -s "-screen 0 640x480x16" xwkhtmltopdf "$ @"' | sudo tee / usr / local / bin / wkhtmltopdf> / dev / null
- sudo chmod a + x / usr / local / bin / wkhtmltopdf
Μόνο εξυπηρετητής χωρίς κεφαλή
- Πρέπει να έχετε εγκατεστημένο το wkhtmltopdf στον εξυπηρετητή σας στον PATH
(apt-get να εγκαταστήσετε wkhtmltox, yum install wkhtmltox)
Πρέπει να είναι εγκατεστημένο στον bundler, διαφορετικά μπορεί να μην λειτουργεί μετά την ενημέρωση του Easy Redmine - Βεβαιωθείτε ότι το πρόγραμμα λειτουργεί σωστά (τρέξτε από την κονσόλα, για παράδειγμα wkhtmltopdf https://easyredmine.com homepage.pdf)
- εκτελέστε ξανά το rake easyproject:install RAILS_ENV=production
- επανεκκινήστε τον εξυπηρετητή
Εγκατάσταση προσθέτου
- ΜΗΝ εγκαθιστάτε προσθέτει ως χρήστης ROOT
- Πρώτα, διαγράψτε όλα τα παλιά πρόσθετα Easy Gantt αν υπάρχουν (πρόσθετα/easy_gantt*)
- Αντιγράψτε όλα τα αποσυμπιεσμένα πρόσθετα στον φάκελο REDMINE_ROOT/plugins
- Στον φάκελο REDMINE_ROOT
Εκτέλεση: |
$ bundle install |
- (ή ενημέρωση πακέτου) |
$ bundle exec rake db: migrate RAILS_ENV = παραγωγή |
$ bundle exec rake redmine: plugins: migrate RAILS_ENV = παραγωγή |
Μετά από αυτό, επανεκκινήστε τον διακομιστή.
Παρακολουθήστε το εκπαιδευτικό βίντεο
Απαιτήσεις για επιτυχή εγκατάσταση
- Έκδοση Redmine: Συμβατό με Redmine 3.2.x, 3.3.x, 3.4.x, 4.x.
- Έκδοση Ruby: 2.3+ (συνιστάται 2.6.)
- Τύπος βάσης δεδομένων: MySQL (συνιστάται), PostgreSQL
Ακολουθήστε τη διαδικασία εγκατάστασης στον #εγκαθιστώ. Επαληθεύστε εάν το αρχείο καταγραφής της εγκατάστασης δεν περιέχει κανένα σφάλμα. Εάν περιέχει, προσπαθήστε να επιλύσετε σύμφωνα με την περιγραφή ή επικοινωνήστε με την support@easyredmine.com με το τμήμα του αρχείου καταγραφής που περιέχει το σφάλμα.
Εγκατάσταση στο Bitnami
Το Bitnami δεν έχει δοκιμαστεί ούτε εγγυάται. Εάν η εγκατάσταση αποτύχει, χειροκίνητα:
Εκτέλεση: |
$ update update |
$ Rake db: μεταναστεύσουν |
$ rake redmine: plugins: μεταναστεύουν |