Je souhaite avoir un log des échanges effectués dans mon web service et je
me pose des questions peut-être métaphysiques.
Bien sur, l'idée du fichier texte est la première solution qui vient à
l'esprit, mais je me pose le problème des accès concurrents.
Si j'ouvre mon fichier de log au début de la méthode du service web, et que
je le ferme à la fin après avoir écrit toutes les tâches que je souhaite
loguer, mon ficher reste ouvert trop longtemps non ? Si un autre client
invoque mon service au même moment, que va t'il se passer si le fichier est
déjà ouvert ? une exception ?
et si j'ouvre et je ferme mon fichier à chaque étape, cela risque de prendre
beaucoup trop de temps, non ?
des idées ? Expérience ?
--
Cordialement
Oxiane
----------------------------------------------------------
Omnia vanitas
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Zoury
Salut Oxiane ! :O)
Tu peux te créer un fichier avec un nom unique par le biais de la méthode Path.GetTempFileName() (assure toi d'avoir les droits d'accès au répertoire TEMP pour le user que ton WebService impersonnifie), ainsi tu pourrais exécuter la fonction sans te soucier du fichier car il serait dédier à l'exécution en cours.
Tu peux également employé une base de données pour logguer tes actions..
-- Cordialement Yanick MVP pour Visual Basic
Salut Oxiane ! :O)
Tu peux te créer un fichier avec un nom unique par le biais de la méthode
Path.GetTempFileName() (assure toi d'avoir les droits d'accès au répertoire
TEMP pour le user que ton WebService impersonnifie), ainsi tu pourrais
exécuter la fonction sans te soucier du fichier car il serait dédier à
l'exécution en cours.
Tu peux également employé une base de données pour logguer tes actions..
Tu peux te créer un fichier avec un nom unique par le biais de la méthode Path.GetTempFileName() (assure toi d'avoir les droits d'accès au répertoire TEMP pour le user que ton WebService impersonnifie), ainsi tu pourrais exécuter la fonction sans te soucier du fichier car il serait dédier à l'exécution en cours.
Tu peux également employé une base de données pour logguer tes actions..
-- Cordialement Yanick MVP pour Visual Basic
Oxiane
Yanick,
merci pour ce conseil. Mon problème est que je souhaite avoir tous mes logs dans un même fichier (pour analyse ultérieure). Si je stocke temporairement mes onfos dans un fichier texte avant de la vider dans mon fichier de log, je risque de perdre des infos en cas de plantage...
Comment fait IIS par exemple pour écrire dans un seul fichier log, alors qu'il peut avoir plusieurs requêtes simultanées ?
-- Cordialement
Oxiane ---------------------------------------------------------- Omnia vanitas
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news:%
Salut Oxiane ! :O)
Tu peux te créer un fichier avec un nom unique par le biais de la méthode Path.GetTempFileName() (assure toi d'avoir les droits d'accès au
répertoire
TEMP pour le user que ton WebService impersonnifie), ainsi tu pourrais exécuter la fonction sans te soucier du fichier car il serait dédier à l'exécution en cours.
Tu peux également employé une base de données pour logguer tes actions..
-- Cordialement Yanick MVP pour Visual Basic
Yanick,
merci pour ce conseil. Mon problème est que je souhaite avoir tous mes logs
dans un même fichier (pour analyse ultérieure). Si je stocke temporairement
mes onfos dans un fichier texte avant de la vider dans mon fichier de log,
je risque de perdre des infos en cas de plantage...
Comment fait IIS par exemple pour écrire dans un seul fichier log, alors
qu'il peut avoir plusieurs requêtes simultanées ?
--
Cordialement
Oxiane
----------------------------------------------------------
Omnia vanitas
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:%23Rio4RikFHA.3256@TK2MSFTNGP12.phx.gbl...
Salut Oxiane ! :O)
Tu peux te créer un fichier avec un nom unique par le biais de la méthode
Path.GetTempFileName() (assure toi d'avoir les droits d'accès au
répertoire
TEMP pour le user que ton WebService impersonnifie), ainsi tu pourrais
exécuter la fonction sans te soucier du fichier car il serait dédier à
l'exécution en cours.
Tu peux également employé une base de données pour logguer tes actions..
merci pour ce conseil. Mon problème est que je souhaite avoir tous mes logs dans un même fichier (pour analyse ultérieure). Si je stocke temporairement mes onfos dans un fichier texte avant de la vider dans mon fichier de log, je risque de perdre des infos en cas de plantage...
Comment fait IIS par exemple pour écrire dans un seul fichier log, alors qu'il peut avoir plusieurs requêtes simultanées ?
-- Cordialement
Oxiane ---------------------------------------------------------- Omnia vanitas
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news:%
Salut Oxiane ! :O)
Tu peux te créer un fichier avec un nom unique par le biais de la méthode Path.GetTempFileName() (assure toi d'avoir les droits d'accès au
répertoire
TEMP pour le user que ton WebService impersonnifie), ainsi tu pourrais exécuter la fonction sans te soucier du fichier car il serait dédier à l'exécution en cours.
Tu peux également employé une base de données pour logguer tes actions..
-- Cordialement Yanick MVP pour Visual Basic
Zoury
> Comment fait IIS par exemple pour écrire dans un seul fichier log, alors qu'il peut avoir plusieurs requêtes simultanées ?
Tu peux ouvrir ton fichier en mode partagé. Cela devrait permettre à plusieurs sources distinctes d'ouvrir le fichier en écriture simultanément (s'ils ont les droits d'accès).
> Comment fait IIS par exemple pour écrire dans un seul fichier log, alors
qu'il peut avoir plusieurs requêtes simultanées ?
Tu peux ouvrir ton fichier en mode partagé. Cela devrait permettre à
plusieurs sources distinctes d'ouvrir le fichier en écriture simultanément
(s'ils ont les droits d'accès).
> Comment fait IIS par exemple pour écrire dans un seul fichier log, alors qu'il peut avoir plusieurs requêtes simultanées ?
Tu peux ouvrir ton fichier en mode partagé. Cela devrait permettre à plusieurs sources distinctes d'ouvrir le fichier en écriture simultanément (s'ils ont les droits d'accès).
je ne connaissais pas ce mode partagé. Cala répond tout à fait à ma question.
merci !
-- Cordialement
Oxiane ---------------------------------------------------------- Omnia vanitas
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news:eTzez$
> Comment fait IIS par exemple pour écrire dans un seul fichier log, alors > qu'il peut avoir plusieurs requêtes simultanées ?
Tu peux ouvrir ton fichier en mode partagé. Cela devrait permettre à plusieurs sources distinctes d'ouvrir le fichier en écriture simultanément (s'ils ont les droits d'accès).
je ne connaissais pas ce mode partagé. Cala répond tout à fait à ma
question.
merci !
--
Cordialement
Oxiane
----------------------------------------------------------
Omnia vanitas
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:eTzez$qkFHA.3212@TK2MSFTNGP10.phx.gbl...
> Comment fait IIS par exemple pour écrire dans un seul fichier log, alors
> qu'il peut avoir plusieurs requêtes simultanées ?
Tu peux ouvrir ton fichier en mode partagé. Cela devrait permettre à
plusieurs sources distinctes d'ouvrir le fichier en écriture simultanément
(s'ils ont les droits d'accès).
je ne connaissais pas ce mode partagé. Cala répond tout à fait à ma question.
merci !
-- Cordialement
Oxiane ---------------------------------------------------------- Omnia vanitas
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news:eTzez$
> Comment fait IIS par exemple pour écrire dans un seul fichier log, alors > qu'il peut avoir plusieurs requêtes simultanées ?
Tu peux ouvrir ton fichier en mode partagé. Cela devrait permettre à plusieurs sources distinctes d'ouvrir le fichier en écriture simultanément (s'ils ont les droits d'accès).