MARX#76390 Kan oude logging van de SYNC adapter automatisch opgeruimd worden - Nieuwe optionele <xml>instelling "common/<clean_log_days>"

svn path=/Mareon/trunk/; revision=60224
This commit is contained in:
Marcel Bourseau
2023-04-26 15:38:40 +00:00
parent c1c4cd3dc6
commit 44f313bf1d
2 changed files with 52 additions and 2 deletions

View File

@@ -734,8 +734,11 @@ function FACILITOR_2_Xtractor()
// 1.70 -- MARX#76415: Mareon koppeling met 3rd Party Viewpoint + MARX#74444: Het '&' teken in de naam van een bijlage wordt niet ondersteund in de sync.
// 1.71 -- MARX#76342: Mareon Bijlagen aanpassing AX2012 via nieuwe webservices die base64 stuk voor stuk ophaalt tbv performance
// 1.72 -- MARX#77225: Bugje statusbericht naar 3RD party Viewpoint/Itris + MARX#76900 Mareon Universele Opdracht API
// 1.73 -- MARX#76390: Kan oude logging van de SYNC adapter automatisch opgeruimd worden
var G_Mareon_Adapter = "1.72";
__Log("************************************************** START Mareon Adapter ***********************************************", 0);
var G_Mareon_Adapter = "1.73";
//MARX#56643: Test Haagwonen inkoopordernummer ontbreekt in Mareon ION001753
var G_new_date = new Date();
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
@@ -747,7 +750,11 @@ var fso = new ActiveXObject("Scripting.FileSystemObject");
var G_settings_xml_file = WScript.Arguments(0);
var G_log_level = Read_Ini_Setting("common","logging");
__Log("************************************************** START Mareon Adapter ***********************************************", 0);
var G_log_clean_days = Read_Ini_Setting("common","clean_log_days");
//MARX#76390 Kan oude logging van de SYNC adapter automatisch opgeruimd worden
//Defaultwaarde is 90 dagen, oftewel logbestanden worden zonder instelling van meer dan 3 maanden geleden opgeruimd.
//Als er niet opgeruimd moet worden, stel dan waarde -1 in (in de XML), dan wordt het verwijderen van oude LOG-bestanden overgeslagen.
if (!G_log_clean_days) G_log_clean_days = 90;
var G_ax_url = Read_Ini_Setting("ax","url");
var G_ax_url_serviceax = Read_Ini_Setting("ax","url_serviceax");
@@ -819,6 +826,7 @@ var G_mar_timeout = 0; //initieel 1e keer.
//Eerst de xml settings loggen
__Log("***XML- common/logging: " + G_log_level, 1);
__Log("***XML- common/clean_log_days: " + G_log_clean_days, 1);
__Log("***XML- ax/url(SupplierService): " + G_ax_url, 1);
__Log("***XML- ax/url(ServiceAX): " + G_ax_url_serviceax, 1);
__Log("***XML- ax2012/url(SupplierService): " + G_ax2012_url, 1);
@@ -1010,5 +1018,9 @@ var G_mar_timeout = 0; //initieel 1e keer.
if (v_date_sendlogfile != "")
{
FCLT_SendLogFile(v_date_sendlogfile);
}
if (G_log_clean_days != -1)
{
CleanUp_Old_Logfiles(G_log_clean_days);
}
}

View File

@@ -1589,6 +1589,44 @@ function __Log(s, level)
}
}
// Logbestanden van meer dan p_delta_dagen geleden worden verwijderd,
// B.v. van meer dan 3 maanden geleden zou dan (bij benadering) p_delta_dagen = 3*30 dagen = 90 zijn.
function CleanUp_Old_Logfiles(p_delta_dagen)
{
__Log("Starting CleanUp_Old_Logfiles: " + p_delta_dagen, 1);
var l_logfolder = GetLogFolder();
var f = fso.GetFolder(l_logfolder);
var fc = new Enumerator(f.files);
var dt_sysdate = new Date;
for (; !fc.atEnd(); fc.moveNext())
{
var filename = fc.item().name;
__Log("File: " + filename, 2);
var l_filename_incl_path = l_logfolder + '/' + filename;
var file = fso.GetFile(l_filename_incl_path);
// We doen niet DateCreated maar DateLastModified, een bestand gaat weg als die meer dan "p_delta_dagen" dagen niet aangepast is...
var dt_file = new Date(file.DateLastModified);
var l_pos = filename.toUpperCase().lastIndexOf(".LOG");
if (filename.toUpperCase().substring(l_pos) == ".LOG") {
// Bestandsnaam op extensie .log
__Log("File: " + filename, 3);
var l_delta_dagen = (dt_sysdate.getTime() - dt_file.getTime())/1000/60/60/24;
__Log("l_delta_dagen: " + l_delta_dagen, 3);
if (l_delta_dagen > p_delta_dagen)
{
// Logbestand is aangemaakt op datum langer dan 'p_delta_dagen' geleden.
// We verwijderen deze...
fso.DeleteFile(l_filename_incl_path);
__Log("(Old) Logfile deleted: " + filename, 1);
}
}
}
__Log("Ending CleanUp_Old_Logfiles", 1);
}
//Maak nieuwe folder.
//bv. p_folder = c:/temp/maaknieuwefolder, dan worden folders temp en maaknieuwefolder nieuwe anagemaakt (als ze nog niet bestonden)
function CreateFolder(p_folder){