From f6ea68730cc286eae549835f301db98aa3ef3dc3 Mon Sep 17 00:00:00 2001 From: Fil <fil@rezo.net> Date: Wed, 23 Oct 2002 23:09:35 +0000 Subject: [PATCH] divers: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * la variation du delais, statistiqueemnt, ne fait que le diviser par deux; l'aléa est donné par les accès au site => poubelle * envoi du mail nouveautes au premier hit dans l'espace public (indépendamment de l'usage du cache ou non) * introduction d'un mécanisme de log, dont le format est le suivant: (fichier data/spip.log) Oct 24 01:03:15 spip fil[605]: envoi mail nouveautes (date et heure) spip uid[pid]: message --- ecrire/inc_version.php3 | 28 ++++++++++++++++++++++++++++ inc-cache.php3 | 1 - inc-public-global.php3 | 15 +++++++-------- 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/ecrire/inc_version.php3 b/ecrire/inc_version.php3 index 3a2cde0021..5459cb1c07 100644 --- a/ecrire/inc_version.php3 +++ b/ecrire/inc_version.php3 @@ -635,5 +635,33 @@ function email_valide($adresse) { trim($adresse))); } +// +// log des evenements +// + +function logrotate() { + $logfile = ($flag_ecrire ? "" : "ecrire/") . "data/spip.log"; + @rename($logfile.'.2',$logfile.'.3'); + @rename($logfile.'.1',$logfile.'.2'); + @rename($logfile,$logfile.'.1'); +} + +function spip_log($message) { + global $flag_ecrire; + + $pid = @getmypid(); + $uid = @get_current_user(); + $message = date("M d H:i:s")." spip $uid"."[$pid]: " + .ereg_replace("\n*$", "\n", $message); + + $logfile = ($flag_ecrire ? "" : "ecrire/") . "data/spip.log"; + $f = @fopen($logfile, "ab"); + if ($f) { + fputs($f, $message); + fclose($f); + if (filesize($logfile) > 10*1024) + logrotate(); + } +} ?> diff --git a/inc-cache.php3 b/inc-cache.php3 index 901e239406..d69d2c105b 100644 --- a/inc-cache.php3 +++ b/inc-cache.php3 @@ -62,7 +62,6 @@ function utiliser_cache($chemin_cache, $delais) { $use_cache &= empty($HTTP_POST_VARS); if (!$use_cache) { -// include_ecrire("inc_mysql.php3"); include_ecrire("inc_connect.php3"); if (!$GLOBALS['db_ok']) $use_cache = true; } diff --git a/inc-public-global.php3 b/inc-public-global.php3 index 9ab9e30982..ea3283654f 100644 --- a/inc-public-global.php3 +++ b/inc-public-global.php3 @@ -24,10 +24,6 @@ function inclure_fichier($fond, $delais, $contexte_inclus = "") { $fichier_cache = generer_nom_fichier_cache($fichier_requete); $chemin_cache = "CACHE/".$fichier_cache; - // Faire varier aleatoirement le delai (50 - 150 %) - // afin d'obtenir des recalculs non simultanes - $delais = $delais / 2 + $delais * rand(0, 255) / 256; - $use_cache = utiliser_cache($chemin_cache, $delais); if (!$use_cache) { @@ -70,7 +66,7 @@ else { // -// Authentification, le cas echeant +// Authentification // $auteur_session = ''; if ($HTTP_COOKIE_VARS['spip_session'] OR $PHP_AUTH_USER) { @@ -382,11 +378,13 @@ if (lire_meta("activer_statistiques") != "non") { // // Envoi du mail quoi de neuf // -if ($db_ok) { - $majnouv = lire_meta('majnouv'); - if ((lire_meta('quoi_de_neuf')=='oui') AND ($jours_neuf=lire_meta('jours_neuf')) AND (email_valide($adresse_neuf = lire_meta('adresse_neuf'))) AND ((time() - $majnouv) > 3600*24*$jours_neuf)) { +$majnouv = lire_meta('majnouv'); +if ((lire_meta('quoi_de_neuf')=='oui') AND ($jours_neuf=lire_meta('jours_neuf')) AND (email_valide($adresse_neuf = lire_meta('adresse_neuf'))) AND ((time() - $majnouv) > 3600*24*$jours_neuf)) { + include_ecrire('inc_connect.php3'); + if ($db_ok) { // lock && indication du prochain envoi + include_ecrire('inc_meta.php3'); ecrire_meta('majnouv', time()); ecrire_metas(); @@ -405,6 +403,7 @@ if ($db_ok) { if ($mail_nouveautes) { include_ecrire('inc_mail.php3'); $nom_site = lire_meta('nom_site'); + spip_log("envoi mail nouveautes"); envoyer_mail($adresse_neuf, "[$nom_site] Les nouveautes", $mail_nouveautes); } } -- GitLab