Meilleure pratique pour voir des données en direct sur le serveur de développement?

StackOverflow https://stackoverflow.com/questions/272798

  •  07-07-2019
  •  | 
  •  

Question

Hypothèse: l'application Web en direct / production supprime les erreurs affichées aux utilisateurs finaux.

Supposons que votre équipe de support technique souhaite voir les données en direct mais à travers les yeux du côté développement de l'application (vous voulez peut-être voir quelles erreurs se produisent ou si vous avez un problème résolu à l'aide d'un données de l'utilisateur final).

À l'heure actuelle, nous avons une base de données servant à la fois les boîtes de développement et de production (ce n'est pas mon idée - je sais que c'est brutal).

Des idées?

Modifier : des outils utiles / pratiques pour mettre en œuvre votre suggestion?

Était-ce utile?

La solution

Nous répliquons les données dans une base de données différente. Oui, il y a un délai, mais cela empêche les gens de passer aux serveurs de production. Cela nous permet également de & "Masquer &"; informations que le support technique (et d'autres personnes d'ailleurs) ne sont pas censées voir.

Autres conseils

En plus de la réplication des données vers le bas en production, nous voyons qui est connecté à l'application et, s'il s'agit d'un membre de la société, envoyez-les à la page d'erreur réelle par rapport au chaton heureux jouant avec une pelote de laine s'excusant.

Sauvegardez et restaurez régulièrement des disques en direct (une à deux fois par jour). Cela n’a pas besoin d’être en temps réel (car vous pourriez entrer des données du côté du développement de toute façon, ce qui pourrait poser problème).

Si vous disposez de données PCI ou HIPAA, assurez-vous de ne pas les inclure dans votre environnement de développement, car cela pourrait enfreindre les lois.

J'aime généralement disposer d'un système à 3 niveaux pour le développement Web:
Développement
Test
Live

La plupart du temps, les tests sont une copie exacte du système en direct, sauf que les erreurs sont activées. Lorsqu'une nouvelle version est sur le point d'être déplacée en direct, elle est remplacée par la nouvelle version AVANT en direct pour détecter les problèmes de mise à niveau.

Le développement est complètement séparé du développement réel, afin de permettre des modifications majeures, telles que la base de données, ou des modifications de l'environnement de production.

Je voudrais tout d'abord que les erreurs soient envoyées par courrier électronique à quelqu'un avec des détails sur la façon dont l'utilisateur est arrivé ou au moins enregistrées pour vous permettre de consulter le journal des erreurs pendant que vous effectuez des actions similaires pour voir si vous obtenez les mêmes messages dans le journal.

Et oui, copier la base de données sur le serveur / site dev est probablement votre seule option. Vous ne souhaitez pas que les modifications apportées par l'équipe de développement génèrent des données en direct et vous aurez probablement aussi des modifications qui ne fonctionneront pas avec la base de données de production à un moment donné.

Je ne recommanderais pas de faire une copie nocturne car un développeur est peut-être au centre d'une nouvelle fonctionnalité dans laquelle il a ajouté des données, puis effacées cette nuit-là. Je copie généralement la ou les bases de données de production sur dev à chaque fois qu'une version majeure est publiée. Cela me permet également de faire des tests de vitesse avec beaucoup de données en direct. Sur certains systèmes, je modifie également le mot de passe Everyones en un mot de passe afin que je puisse me connecter facilement en tant qu'utilisateur.

Si votre configuration le permet:

a. Ajoutez une fonction de journalisation (s’il n’en existe pas déjà) pour écrire des messages d’intérêt dans un fichier journal.

b. Exécutez la commande unix

queue -f < logfile.txt

qui diffusera le fichier journal en croissance sur votre console.

http://www.monkey.org/cgi-bin/man2html?tail

Si vous avez Windows, essayez ceci:

http://tailforwin32.sourceforge.net/

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top