En fait, pour le moment je distingue deux niveaux de production :
- Le niveau administration système, que je vais dans un premier temps gérer à 
minima. (je me ferais bien accompagner, mais pour le moment ce n'est pas 
possible)
Si jamais le service est amené à prendre de l'ampleur, je pense migrer vers 
amazon pour limiter la gestion des serveurs. A ce moment là, je me poserai la 
question de l'administration en général.  
En l'état actuel, le serveur est nouveau, les disques sont vides, la base est 
sauvegardée quotidiennement vers S3. la partition root est bien isolée du reste 
et dans le pire des cas, j'ai une procédure de réinstallation. Je pense que ca 
devrait tenir un certain temps. Serais-je trop optimiste ?

- Le niveau administration applicative : C'est là que je me pose le plus de 
question. Je n'ai pas vraiment idée de comment l'application va se comporter en 
condition réelle. J'ai simulé de la montée en charge, mais par expérience, la 
réalité est souvent plus complexe.  
Je voudrais pouvoir a minima être prévenu des problèmes au moment de leur 
arrivée et avoir l'info nécessaire.
Apres l'idée était de pouvoir croiser des logs d'action (au niveau du 
javascript et des applis mobiles) avec des logs d'erreur pour identifier les 
problèmes. Mais c'est probablement un choix trop luxueux (et peut etre inutile) 
à ce stade.
Je pense que je vais regarder exception_notification dans un premier temps.

New_relic et Airbrake ont l'air trés bien, mais ce qui me gene, c'est que bien 
que gratuit au début ces services finissent par faire une belle addition. Le 
Cloud c'est très bien, mais le cout est non négligeable.

Merci pour vos retours en tout cas.




On Thursday 24 May 2012 at 11:47, Thibaut Barrère wrote:

> Bonjour Olivier,
>   
> > Je n'ai pas d'expérience particulière d'exploitation de production sur une 
> > application Rails.
> >  
>  
>  
> Première suggestion: peux-tu te faire accompagner dans ta structure? 
> Avez-vous déjà une équipe qui gère la production en général? (ou interne, ou 
> externe).
>   
> > - J'ai trouvé God pour daemoniser des process qui à l'air plutôt pas mal. Y 
> > en a t il d'autre ?
> >  
>  
>  
> J'utilise God ou Monit selon les cas. Monit est plus proche du système, mais 
> plus verbeux et plus difficile à configurer.  
>   
> > - J'ai aussi vu passé la possibilité d'envoyer des mails automatiquement en 
> > cas d'erreur applicative rails mais je ne retrouve pas l'info.
> >  
>  
>  
> Tu peux utiliser:
> - https://github.com/smartinez87/exception_notification
> - ou airbrake/exceptional
>  
> Je te déconseille d'héberger toi même ton système de notification d'erreurs, 
> au moins avant d'avoir plusieurs applications et des plateformes 
> différenciées (tu ne veux pas que ton système d'alerte tombe en panne :-).  
>  
> Important: mets un système simple de monitoring externe en place (type 
> pingdom ou montastic).  
>   
> > - Existe-t-il un outil permettant par exemple de centraliser les 
> > différentes logs (log de process rails, log de nginx, log de thin ..) sans 
> > avoir à modifier l'application ? J'ai trouvé un eventmachine-tail qui est 
> > intéressant. Je pourrais le coupler à un mongo, mais je n'ai pas envie de 
> > réinventer la roue.  
> >  
>  
>  
> Au début, tu peux sans problème ne pas faire ça et tailer sur les différents 
> logs d'un coup (ça n'a pas posé de problème sur plein d'applications de mon 
> côté).
>  
> Pour un premier déploiement, ne surtout pas compliquer (ex: ne pas ajouter 
> une pièce à l'infra pour logger etc type mongo). Après, voir syslog etc.
>  
> Si possible, mets en place une tâche en pré cap deploy pour faire un backup 
> de ta base.  
>  
> Conseillé: un moyen de savoir si tu es court en espace disque ou en RAM, type 
> nagios ou externe (server density, cloudkick...) car manquer d'espace disque 
> amène vite à des situations compliquées.  
>  
> Bref: faire simple - le moins de pièces possibles.
>  
> Voilà en espérant avoir été utile.
>  
> Thibaut
> --
> http://www.logeek.fr
>  
>  
> --  
> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
> Google Groups.
> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
> [email protected] (mailto:[email protected])
> Pour résilier votre abonnement envoyez un e-mail à l'adresse 
> [email protected] 
> (mailto:[email protected])  

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]

Répondre à