Pagina 2 di 2 PrimoPrimo 12
Visualizzazione risultati 31 fino 53 di 53

Discussione: Problema con PHP tra Meteobridge ed Altervista

  1. #31
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Ciao ragazzi,
    riprendo questa conversazione perchè ho provato a rifare da zero il template per vedere se c'era qualcosa di strano nell'update da una versione all'altra.

    Appena caricato, sabato 7/9, tutto ha iniziato a funzionare regolarmente;
    poi stanotte verso le 2 di mattina è nuovamente crashata la connessione tra il meteobridge e il template (https://ibb.co/pnKBhbK).

    Il nuovo template è al seguente link: https://simonicco.altervista.org/Met...dexDesktop.php

    Potete aiutarmi di nuovo?

    Grazie.

  2. #32
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,619

    Predefinito

    La richiesta arriva? Il file viene creato?

    in teoria Meteobridge non prova nemmeno a chiamare l'api perchè ha l'errore nella sua schermata di impostazioni (vedi immagine al primo post)
    Se Meteobridge non prova nemmeno a chiamare l'api, non capisco come possa centrare il tuo sito AlterVista.

    Ciao!

  3. #33
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Provo a darvi delle info spero utili.

    Considerando il server stamattina, i file generati nella cartella simonicco.altervista.org/Meteotemplate/template_19.0/cache sono quelli nell'immagine al link (con relativa data di creazione), e ve li mostro di seguito

    apiLog.txt
    (vuoto)

    interactiveBanner.txt
    Codice:
    lightrain
    latestApiCache.txt
    Codice:
    {"timestamp":["1725928657"],"date":["2024-09-10 02:37:37"],"T":["13.8"],"Tmax":["13.8"],"Tmin":["13.7"],"H":["96"],"P":["1008.7"],"W":["0.0"],"G":["0.0"],"B":["312"],"R":["0.2"],"RR":["0.0"],"D":[13.2],"A":[14.8]}
    latestVersions_20240911.txt
    Codice:
    {"template":"19.0","menu":"2018-02-02","blocks":{"airQualityWorld":"3.0","astroEvents":"4.0","audio":"1.0","currentAustralia":"3.2","warningsAU":"2.2","forecastAU":"2.0","radarAU":"2.2","climateAU":"1.1","radarAURegional":"2.0","currentAT":"1.1","climateAT":"1.0","avalanchesTirol":"2.1","baroTrend":"2.0","currentBE":"2.0","radarBE":"1.1","blank":"1.0","bloomskyTimelapse":"1.1","currentBR":"1.0","calculator":"3.0","calendar":"3.1","calendarMonth":"2.2","ecForecast":"2.3","radarCA":"2.0","warningsCA":"4.0","highLowCA":"3.0","currentCA":"3.0","airQualityCA":"3.1","clock":"3.0","clockDigital":"2.0","cloudHeight":"4.0","cloudTemp":"2.0","co2":"3.0","countDown":"3.0","currentHR":"1.0","forecastHR":"1.0","current":"24.1","currentBig":"6.0","currentMap":"2.0","currentCZ":"1.1","forecastCZ":"1.0","radarCzech":"1.0","dailyDeviations":"3.1","dayNight":"2.0","dbInfo":"3.1","currentDK":"2.0","densityAltitude":"2.0","stationDeviation":"5.0","dictionary":"1.0","dynamicGraph":"2.1","dynamicImage":"4.0","dynamicText":"2.5","earthquakes":"3.0","radarEE":"2.0","forecastEE":"2.0","extremes":"2.0","warningsEU":"1.2","radarEU":"3.1","warningsEUregions":"2.1","radarFI":"2.0","currentFI":"1.0","climateFI":"1.1","fireDanger":"2.1","forecast":"9.0","forecastGraphical":"1.0","forecastFR":"3.0","currentFR":"1.1","radarFR":"3.0","mapsFrance":"1.0","gauges":"7.1","ssGauges":"3.1","currentDE":"1.2","radarDE":"1.0","forecastDE":"1.1","warningsDE":"1.0","climateDE":"1.0","gfs":"2.1","glossary":"2.0","graphCombined":"2.0","radarGR":"2.1","meteogramGR":"1.0","currentGR":"1.0","climateGR":"1.0","seaGR":"1.0","greetings":"1.1","history":"4.0","extraH":"2.0","radarHU":"1.0","hurricaneRSS":"3.0","images":"1.0","indoor":"7.0","info":"3.0","interactiveGraph":"11.1","radarIE":"1.0","italyClimate":"3.0","currentIT":"1.1","forecastIT":"2.1","radarIT":"1.3","radarJP":"1.0","langSwitch":"1.0","lightning":"3.2","leaf":"2.2","location":"1.1","logo":"1.1","lunarEclipses":"2.0","map":"1.1","marsWeather":"2.0","metarWeather":"3.1","metarCustom":"1.1","meteogram":"4.0","meteors":"2.0","mtBlog":"1.1","moonPhase":"2.0","myForecast":"2.0","nasaImg":"2.0","naSatellite":"1.1","nearEarthObjects":"2.0","netAtmoExtra":"1.0","netAtmoModules":"1.0","currentNL":"1.0","forecastNL":"2.1","radarNL":"1.0","climateNL":"1.0","newsFeed":"2.1","weatherNZ":"2.0","forecastNZ":"1.0","radarNZ":"1.0","norwayAlerts":"1.2","forecastNorway":"1.1","norwayRadar":"1.0","outlook":"2.1","ozoneForecast":"1.0","partnerStations":"3.0","payPal":"2.0","dayPie":"4.2","currentPL":"1.0","poll":"1.0","pollen":"6.0","weatherPortugal":"2.0","forecastPT":"1.0","radarPT":"2.0","purpleAir":"1.0","qrCode":"1.1","rain":"7.1","rainBalance":"1.0","riset":"7.0","rssFeed":"1.2","warningsRU":"1.0","seaTemperature":"2.2","currentRS":"1.0","currentSK":"1.1","radarSK":"1.0","snow":"2.1","socialNetworks":"2.1","soil":"4.0","solarEclipses":"2.0","solarEclipse2017Aug21":"1.1","warningsZA":"1.0","currentES":"1.3","spainExtremes":"1.0","forecastSpain":"1.0","spainUV":"2.0","radarES":"3.0","stationAverages":"2.0","stationData":"10.0","stationRecords":"4.1","stationStatus":"5.0","summary":"5.4","radarSR":"1.0","weatherSweden":"3.0","forecastSE":"1.0","warningsSE":"1.0","radarSE":"1.0","currentCH":"2.0","climateCH":"1.0","extraT":"2.0","text":"1.0","thermometer":"3.0","trends":"2.1","trivia":"1.1","twitterFeed":"2.0","currentUK":"2.0","warningsUK":"2.1","marineUK":"1.0","regionalUK":"2.0","radarUK":"1.0","climateUK":"1.0","radarUS":"8.0","airQualityUS":"3.1","currentUS":"3.1","usSPC":"2.2","tidesCurrentsUS":"1.2","grLevelX":"2.0","nwsForecast":"4.1","nwsForecastCustom":"3.1","nwsForecastMultiple":"2.2","highLowUS":"3.1","warningsUS":"2.0","warningsUSRegions":"7.0","areaForecastDiscussion":"1.1","normalsUS":"1.0","snowUS":"2.0","upcoming":"2.0","usExtremeProbability":"1.0","uv":"2.1","uvForecast":"3.1","videos":"1.0","weatherFacts":"9.0","waveHeight":"1.0","weatherNetworks":"7.0","webcam":"6.0","webcamTimelapse":"1.0","wind":"3.1","windy":"1.1","windRose":"1.1","worldTime":"2.0","youTube":"2.0"},"plugins":{"airQualityCZ":"1.0","airQualityForecastCA":"1.2","airTraffic":"1.1","yearNormals":"9.0","antarctica":"2.0","apiViewer":"1.0","apparentTemp":"2.0","australiaSynopticCharts":"1.0","australiaWeatherMaps":"1.0","warningsAustralia":"1.0","bioIndexes":"3.3","blog":"3.0","bloomSky":"3.0","calendar":"1.1","canadaMonthlySummary":"1.1","canadaRadar":"2.1","canadaLightning":"1.0","canadaSummary":"1.0","warningsCanada":"2.0","cityConditions":"2.4","climateCanada":"3.0","climateCustom":"1.0","climateCzech":"1.0","climateGermany":"1.0","climateSpain":"2.0","climateUS":"4.1","climateClassification":"1.0","climateMaps":"1.0","mapsUK":"1.1","climateNormals":"1.0","cloudCalculations":"2.0","co2":"2.2","cocorahs":"2.0","conditionsUS":"2.0","contact":"3.0","continentality":"2.0","countryClimate":"1.1","countryDetail":"1.1","czechMeteogram":"1.0","dailyWeatherMapsUS":"1.0","dataDisplay":"3.0","distributions":"3.0","dataCheck":"1.2","degreeDays":"1.0","deviations":"2.0","dewpoint":"2.1","diary":"4.0","disasters":"2.2","droughtUS":"1.3","earthquakes":"3.0","eclipses":"2.1","ecoFootprint":"1.0","elNino":"2.1","warningsEU":"1.1","et":"2.2","extendedGraphs":"5.0","fireDanger":"3.2","fluUS":"1.0","forecastNL":"1.0","forecastComparison":"2.0","forecastModelEU":"1.3","forecastModelUS":"1.1","climateFR":"2.0","geography":"1.0","globalModel":"1.0","globalSnow":"1.1","grLevelX":"1.0","growingDegreeDays":"1.0","guestbook":"3.0","meteoHistory":"1.0","hurricanes":"1.1","indoorData":"4.0","issTracker":"1.2","jetStream":"1.0","lightning":"1.0","liveGaugesAPI":"2.1","liveGaugesCumulus":"2.1","marine":"2.1","meteohub":"2.0","models":"1.0","myMap":"1.0","myStation":"2.0","netAtmo":"4.0","netherlandsClimate":"1.0","netherlandsMaps":"1.0","nightSky":"3.0","noaaReport":"2.0","notifications":"2.0","nwsWarnings":"2.1","pageBuilder":"1.0","photoGallery":"1.0","pollenCalendar":"9.0","pollenForecastEU":"1.0","precipitationAnalysis":"4.4","pressureConversion":"1.0","pressureMapUK":"2.0","radarAustralia":"1.2","radarEU":"1.2","radialGraphs":"3.0","riverHeightsUS":"4.0","satelliteImages":"2.0","scales":"2.1","seaTemp":"2.0","snowUSStations":"1.0","snow":"4.1","socialNetworks":"1.1","solar":"2.0","solarPower":"1.0","solarSystem":"2.1","spaceWeather":"4.0","stationCompare":"1.1","stationExtremes":"2.0","stationFeed":"2.0","steelSeries":"4.0","stickers":"7.2","spcReports":"1.0","sunMoon":"3.2","tempAnalysis":"1.1","tempSums":"1.0","usExtremes":"2.0","usTempChange":"1.0","extremesUK":"2.1","units":"2.2","ukAir":"1.0","unitedStates":"1.0","usRadar":"2.0","userMap":"6.0","volcanoes":"1.1","wanet":"1.0","weatherMETAR":"4.0","wdParser":"2.0","history":"2.1","weatherRecords":"3.0","weatherSymbols":"2.0","weatherTerminology":"3.0","weatherTerminologyCZ":"1.0","weatherTerminologyDK":"1.0","weatherTerminologyNL":"1.0","weatherTerminologyFR":"2.0","weatherTerminologyDE":"1.1","weatherTerminologyGR":"1.0","weatherTerminologyHU":"1.0","weatherTerminologyIT":"1.0","weatherTerminologyNO":"1.0","weatherTerminologyPT":"1.0","weatherTerminologyES":"1.0","webcam":"3.0","weekDays":"3.0","windDirection":"2.2","windPower":"1.1","wlIP":"4.0","worldExtremes":"1.1","worldTime":"1.1","wuUpload":"1.0","wxSim":"2.0","yearComparison":"5.0"}}
    version.txt
    Codice:
    11.0


    Secondo me il Meteodridge non chiama l'api, infatti nella pagina ci sono le due X rosse, come nell'immagine al seguente link.


    Senza il codice per la generazione del file debug.txt, chiamando chiamando api.php manualmente mi dà una pagina vuota.
    Mentre inserendo il codice per la generazione del file debug.txt in varie posizioni, ho capito che si genera finchè viene inserito prima di "check if rain is from yesterday, if so, delete it"
    Per essere preciso, nelle seguenti righe di codice (siamo verso riga 160-200, del file scaricabile al link)
    - il file debug_PRIMA_CheckIfRainIsFromYesterday.txt SI GENERA
    - il file debug_DOPO_CheckIfRainIsFromYesterday.txt NON SI GENERA
    Codice PHP:
    $file = fopen('debug_PRIMA_CheckIfRainIsFromYesterday.txt', 'w');

    if (!
    $file) {
    echo
    'Impossibile aprire il file';
    exit;
    }

    fwrite($file, "Valori GET:\n");
    foreach (
    $_GET as $key => $value) {
    fwrite($file, "$key: $value\n");
    }

    fwrite($file, "\nValori POST:\n");
    foreach (
    $_POST as $key => $value) {
    fwrite($file, "$key: $value\n");
    }

    fclose($file);


    if(
    array_key_exists("R".$timeId,$liveInput)){ // check if rain is from yesterday, if so, delete it
    $dayRain = date("Ymd",$liveInput['R'.$timeId]);
    $dayNow = date("Ymd");
    if(
    $dayRain!=$dayNow){
    unset(
    $liveInput['R']);
    unset(
    $liveInput['RTime']);
    }
    }



    $file = fopen('debug_DOPO_CheckIfRainIsFromYesterday.txt', 'w');

    if (!
    $file) {
    echo
    'Impossibile aprire il file';
    exit;
    }

    fwrite($file, "Valori GET:\n");
    foreach (
    $_GET as $key => $value) {
    fwrite($file, "$key: $value\n");
    }

    fwrite($file, "\nValori POST:\n");
    foreach (
    $_POST as $key => $value) {
    fwrite($file, "$key: $value\n");
    }

    fclose($file);


    Ora però sono arrivato al mio limite di conoscenze del settore, spero possiate darmi una mano voi.

    Grazie.

  4. #34
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Salve,
    come si evince dall'immagine (l'avevo già evidenziato l'altra volta qui), il problema non è con l'api di Meteodridge, che viene caricata, ma con l'api di Meteotemplate. Sembra che url e la password di Meteotemplate non siano validi (almeno dall'immagine).

    Infatti, facendo la prova con l'url come l'atra volta (qui), ottengo dall'api una risposta (nella pagina bianca). Ovviamente mettndo come password altro, mi restituisce: Unauthorized.

    Quindi l'api richiamando l'url corretto risponde. Ciò era già stato evidenzito l'atra volta.

    Nell'immagne non si ha modo di capire se l'url dell'api di Meteotemplate sia corretto. Immaggino però che abbia già verificato ciò più volte e quindi sia scritto giusto.

    Se il problema non è l'url scritto sbagliato, allora dev'essere da qualche parte nel codice di Meteodridge che provvede ad effettuare la verifica/rilevamento dell'url di api.php.

    L'unico modo per poter cercare di fare qualcosa è visionare i vari file di Meteodridge. Dovrebbe cercare nei file riferimenti (varabili, funzioni) realtivi al caricamento dell'api di Meteotemplate. Eventualmente poi, se non riesce a risolvere, una volta identificati i file contenenti il codice pertinente, può mostrarlo qui o farne una copia in uno zip e lincarlo qui. Così possiamo tentare di capire dove sia il problema.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 11-09-2024 alle ore 15.19.24

  5. #35
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Ti confermo che password e url sono corretti, anche perchè provando a cambiarli (sbagliandoli) mi dà errori diversi.

    Capisco quindi che devo investigare i file di Meteobridge, ma dove posso trovarli? Io ho solo i file di Meteotemplate che carico sul server altervista.org.

    E un'altra domanda: perchè se richiamo api.php manualmente, il file debug.txt si genera solo se inserisco il codice prima di "Check If Rain Is From Yesterday", e non dopo?
    Questo a me farebbe pensare che il problema sia nel file api.php, che ad un certo punto si blocca e non procede con le stringhe successive a "Check If Rain Is From Yesterday".

    Scusate l'ignoranza.

  6. #36
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    Capisco quindi che devo investigare i file di Meteobridge, ma dove posso trovarli? Io ho solo i file di Meteotemplate che carico sul server altervista.org.
    Io mi riferivo appunto a quelli caricati nel suo sito, non a quelli esterni. Se dipendesse dalle risorse esterne di Meteodridge, allora in tal caso spetterebbe al loro staff risolvere (poichè sarebbero gli unici a poterlo fare).

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    E un'altra domanda: perchè se richiamo api.php manualmente, il file debug.txt si genera solo se inserisco il codice prima di "Check If Rain Is From Yesterday", e non dopo?
    Questo a me farebbe pensare che il problema sia nel file api.php, che ad un certo punto si blocca e non procede con le stringhe successive a "Check If Rain Is From Yesterday".
    Intende questo blocco qui?
    Codice PHP:
    if(array_key_exists("R".$timeId,$liveInput)){ // check if rain is from yesterday, if so, delete it
    $dayRain = date("Ymd",$liveInput['R'.$timeId]);
    $dayNow = date("Ymd");
    if(
    $dayRain!=$dayNow){
    unset(
    $liveInput['R']);
    unset(
    $liveInput['RTime']);
    }
    }
    Faccia il debug con var_dump() delle variabili in causa in quel blocco di codice. Provi eseguuendo var_dump() prima della condizione if, dentro (sotto alla valorizzazione delle 2 variabili) e dopo la condizione. Quindi esegua api.php e vediamo cosa risulta.

    Probabilmente c'è una variabile o un parmantro non valido che causa un blocco silenzioso senza generare un messaggio.

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    Scusate l'ignoranza.
    Ignoranza su cosa, su dei codici relativi ad un applicativo che non è suo e non ha sviluppato?

    Non c'è alcu motivo di scusarsi per questo. Neanche io (ed immagino che valga anche per gli altri) ne conosco tutti i dettagli a livello tecnico-strutturale. Non avendo un installazione su cui fare prove, mi baso semplicemente sulle imformazioni che riesco a trovare nel web e sul file api.php che ho modo di visionare, più le infrmazioni delle prove fatte da lei.

    Non sono mica rchieste particolari competenze tecniche per scrivere e chiedere aiuto, qui nel forum.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 11-09-2024 alle ore 20.18.58

  7. #37
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Sì intendo proprio quel blocco.
    Non avendo molte conoscenze di linguaggio php sto provando inserendo var_dump() in questo modo, ma non capisco dove dovrei visualizzare il risultato del comando.
    Immagino si dovrebbe visualizzare nella pagina web che lancio manualmente, ma vedo sempre una pagina bianca.
    Sto sbagliando qualcosa?

    Grazie.



    Codice PHP:
    var_dump($timeId);
    var_dump($liveInput);
    if(
    array_key_exists("R".$timeId,$liveInput)){ // check if rain is from yesterday, if so, delete it

    $dayRain = date("Ymd",$liveInput['R'.$timeId]);
    $dayNow = date("Ymd");
    if(
    $dayRain!=$dayNow){
    unset(
    $liveInput['R']);
    unset(
    $liveInput['RTime']);
    }
    }

  8. #38
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Sì, eseguendo da browser il file, dovrebbero venire mostrate nella pagina i valori delle variabili.

    Intendevo una cosa di questo tipo:
    Codice PHP:
    echo "<b>timeId 1:</b> <br>"; var_dump($timeId);
    echo
    "<br><br> <b>liveInput 1:</b> <br>"; var_dump($liveInput); echo "<br><br>";

    if(
    array_key_exists("R".$timeId,$liveInput)){ // check if rain is from yesterday, if so, delete it
    $dayRain = date("Ymd",$liveInput['R'.$timeId]);
    $dayNow = date("Ymd");

    echo
    "<b>timeId 2:</b> <br>"; var_dump($timeId);
    echo
    "<br><br> <b>liveInput 2:</b> <br>"; var_dump($liveInput); echo "<br><br>";

    if(
    $dayRain!=$dayNow){
    unset(
    $liveInput['R']);
    unset(
    $liveInput['RTime']);
    }
    }
    echo
    "<b>timeId 3:</b> <br>"; var_dump($timeId);
    echo
    "<br><br> <b>liveInput 3:</b> <br>"; var_dump($liveInput); echo "<br><br>";
    Dovrebbe restituire a video una cosa tipo:
    Codice:
    timeId 1: 
    string(4) "Time" 
    
    liveInput 1: 
    array(17) { ["U"]=> int(1707201617) ["SW"]=> string(11) "meteobridge" ["T"]=> float(7.3) ["TMX"]=> float(7.3) ["TMN"]=> float(7.3) ["H"]=> int(84) ["P"]=> float(1023.9) ["W"]=> int(0) ["G"]=> float(1.4) ["B"]=> int(212) ["RR"]=> int(0) ["TIN"]=> int(19) ["HIN"]=> int(49) ["D"]=> float(4.7) ["A"]=> float(6.1) ["DTime"]=> int(1726202853) ["ATime"]=> int(1726202853) } 
    
    timeId 3: 
    string(4) "Time" 
    
    liveInput 3: 
    array(17) { ["U"]=> int(1707201617) ["SW"]=> string(11) "meteobridge" ["T"]=> float(7.3) ["TMX"]=> float(7.3) ["TMN"]=> float(7.3) ["H"]=> int(84) ["P"]=> float(1023.9) ["W"]=> int(0) ["G"]=> float(1.4) ["B"]=> int(212) ["RR"]=> int(0) ["TIN"]=> int(19) ["HIN"]=> int(49) ["D"]=> float(4.7) ["A"]=> float(6.1) ["DTime"]=> int(1726202853) ["ATime"]=> int(1726202853) }
    Unsando una copia del file api.php con un file meteotemplateLive.txt (con dati validi prelevati da un file die sempio trovato nel web), ho fatto un'area di prova (limitata solo all'api). Nel mio caoso, ovviamente ci sono delle mancanze, non avebdo resto dei file.

    Trovo strano che non venga visualizzato nulla.

    Cordiali saluti.

  9. #39
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Ok, ho provato a lanciare questo codice

    Codice PHP:
    echo "<b>timeId 1:</b> <br>"; var_dump($timeId);
    echo
    "<br><br> <b>liveInput 1:</b> <br>"; var_dump($liveInput); echo "<br><br>";

    if(
    array_key_exists("R".$timeId,$liveInput)){ // check if rain is from yesterday, if so, delete it

    echo "<b>timeId 3:</b> <br>"; var_dump($timeId);
    echo
    "<br><br> <b>liveInput 3:</b> <br>"; var_dump($liveInput); echo "<br><br>";

    $dayRain = date("Ymd",$liveInput['R'.$timeId]);
    $dayNow = date("Ymd");

    if(
    $dayRain!=$dayNow){
    unset(
    $liveInput['R']);
    unset(
    $liveInput['RTime']);
    }
    }

    echo
    "<b>timeId 3:</b> <br>"; var_dump($timeId);
    echo
    "<br><br> <b>liveInput 3:</b> <br>"; var_dump($liveInput); echo "<br><br>";

    mi dà questo risultato:

    Codice:
    timeId 1:
    string(4) "Time"
    
    liveInput 1:
    NULL
    riassumendo: ho provato a inserire tre volte le due stringhe "echo" ma visualizza solo la prima
    Ultima modifica di simonicco : 13-09-2024 alle ore 15.01.47

  10. #40
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Dunque parte del problema è realtivo a $liveInput che non viene valorizato.

    $liveInput come si evince anche dal mio test nella risposta precedente, è un array, il quale dovrebbe contenre tutti i principali valori meteo. Tali valori vngono recuperati dal file meteotemplateLive.txt.

    Quindi, o i valori non vengono recuperati oppure il file meteotemplateLive.txt non li contiene.

    Guradando il file da browser risulta questo:
    Codice:
    {"D":-112,"DTime":1726216455,"A":-4,"ATime":1726216455}
    Può fare una prova, sempre con lo stesso codice per il debug. Copiare nel file meteotemplateLive.txt questo:
    Codice:
    {"U":1707201617,"SW":"meteobridge","T":7.3,"TMX":7.3,"TMN":7.3,"H":84,"P":1023.9,"W":0,"G":1.4,"B":212,"R":0,"RR":0,"TIN":19,"HIN":49,"UTime":1707201618,"SWTime":1707201618,"TTime":1707201618,"TMXTime":1707201618,"TMNTime":1707201618,"HTime":1707201618,"PTime":1707201618,"WTime":1707201618,"GTime":1707201618,"BTime":1707201618,"RTime":1707201618,"RRTime":1707201618,"TINTime":1707201618,"HINTime":1707201618,"D":4.7,"DTime":1707201618,"A":6.1,"ATime":1707201618}
    poi eseguire nuovamente api.php.

    Ciò dovrebbe far risultare $liveInput valorizzato. Alla chiamata successiva però, si ripristinerà la condizione precedente a causa di questa riga:
    Codice PHP:
    // remove value and timestamp from array
    unset($liveInput[$keyValue]); // remove value
    Infatti, se lo si commenta, meteotemplateLive.txt non perderà i dati, seppur non vengano aggiornati.

    Detto ciò, il problema di base, sembra essere la mancanta scrittura nel file meteotemplateLive.txt dei dati meteo che servono a valorizzare l'array $liveInput.

    Sempre in api.php, c'è la parte di codice che scrive il file meteotemplateLive.txt. Esegua un debag anche qui.
    Codice PHP:
    // calculate dewpoint
    $rawInput['D'] = (string)dewpoint($rawInput['T'], $rawInput['H']);
    $rawInput['D'.$timeId] = $utc;
    $apiLog['info'][] = "calculated D: ".$rawInput['D'];
    echo
    "<br><br>"; var_dump($rawInput['D'], $rawInput['D'.$timeId]);

    // calculate apparent temp
    $rawInput['A'] = (string)apparent($rawInput['T'], $rawInput['H'], $rawInput['W'] / 3.6);
    $rawInput['A'.$timeId] = $utc;
    $apiLog['info'][] = "calculated A: ".$rawInput['A'];
    echo
    "<br><br>"; var_dump($rawInput['A'], $rawInput['A'.$timeId]);

    // save raw input
    $rawOutput = json_encode($rawInput,JSON_NUMERIC_CHECK);
    $apiLog['info'][] = "Save meteotemplateLive.txt: ".$rawOutput;
    file_put_contents($base."meteotemplateLive.txt",$rawOutput);
    echo
    "<br><br>"; var_dump($rawOutput);
    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 13-09-2024 alle ore 15.53.14

  11. #41
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    facendo questa prova

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Può fare una prova, sempre con lo stesso codice per il debug. Copiare nel file meteotemplateLive.txt questo:
    Codice:
    {"U":1707201617,"SW":"meteobridge","T":7.3,"TMX":7.3,"TMN":7.3,"H":84,"P":1023.9,"W":0,"G":1.4,"B":212,"R":0,"RR":0,"TIN":19,"HIN":49,"UTime":1707201618,"SWTime":1707201618,"TTime":1707201618,"TMXTime":1707201618,"TMNTime":1707201618,"HTime":1707201618,"PTime":1707201618,"WTime":1707201618,"GTime":1707201618,"BTime":1707201618,"RTime":1707201618,"RRTime":1707201618,"TINTime":1707201618,"HINTime":1707201618,"D":4.7,"DTime":1707201618,"A":6.1,"ATime":1707201618}
    poi eseguire nuovamente api.php.
    ho questo risultato
    Codice:
    timeId 1:
    string(4) "Time"
    
    mtLive 1:
    string(471) "{"U":1726234774,"SW":"meteobridge","T":19,"TMX":19.1,"TMN":18.8,"H":53,"P":1008.6,"W":5.6,"G":14.5,"B":274,"R":0,"RR":0,"TIN":24.7,"HIN":46,"UTime":1726238372,"SWTime":1726238372,"TTime":1726238372,"TMXTime":1726238372,"TMNTime":1726238372,"HTime":1726238372,"PTime":1726238372,"WTime":1726238372,"GTime":1726238372,"BTime":1726238372,"RTime":1726238372,"RRTime":1726238372,"TINTime":1726238372,"HINTime":1726238372,"D":9.2,"DTime":1726238372,"A":17.7,"ATime":1726238372}"
    
    liveInput 1:
    array(32) { ["U"]=> int(1726234774) ["SW"]=> string(11) "meteobridge" ["T"]=> int(19) ["TMX"]=> float(19.1) ["TMN"]=> float(18.8) ["H"]=> int(53) ["P"]=> float(1008.6) ["W"]=> float(5.6) ["G"]=> float(14.5) ["B"]=> int(274) ["R"]=> int(0) ["RR"]=> int(0) ["TIN"]=> float(24.7) ["HIN"]=> int(46) ["UTime"]=> int(1726238372) ["SWTime"]=> int(1726238372) ["TTime"]=> int(1726238372) ["TMXTime"]=> int(1726238372) ["TMNTime"]=> int(1726238372) ["HTime"]=> int(1726238372) ["PTime"]=> int(1726238372) ["WTime"]=> int(1726238372) ["GTime"]=> int(1726238372) ["BTime"]=> int(1726238372) ["RTime"]=> int(1726238372) ["RRTime"]=> int(1726238372) ["TINTime"]=> int(1726238372) ["HINTime"]=> int(1726238372) ["D"]=> float(9.2) ["DTime"]=> int(1726238372) ["A"]=> float(17.7) ["ATime"]=> int(1726238372) }
    
    timeId 3:
    string(4) "Time"
    
    liveInput 3:
    array(32) { ["U"]=> int(1726234774) ["SW"]=> string(11) "meteobridge" ["T"]=> int(19) ["TMX"]=> float(19.1) ["TMN"]=> float(18.8) ["H"]=> int(53) ["P"]=> float(1008.6) ["W"]=> float(5.6) ["G"]=> float(14.5) ["B"]=> int(274) ["R"]=> int(0) ["RR"]=> int(0) ["TIN"]=> float(24.7) ["HIN"]=> int(46) ["UTime"]=> int(1726238372) ["SWTime"]=> int(1726238372) ["TTime"]=> int(1726238372) ["TMXTime"]=> int(1726238372) ["TMNTime"]=> int(1726238372) ["HTime"]=> int(1726238372) ["PTime"]=> int(1726238372) ["WTime"]=> int(1726238372) ["GTime"]=> int(1726238372) ["BTime"]=> int(1726238372) ["RTime"]=> int(1726238372) ["RRTime"]=> int(1726238372) ["TINTime"]=> int(1726238372) ["HINTime"]=> int(1726238372) ["D"]=> float(9.2) ["DTime"]=> int(1726238372) ["A"]=> float(17.7) ["ATime"]=> int(1726238372) }
    
    timeId 3:
    string(4) "Time"
    
    liveInput 3:
    array(32) { ["U"]=> int(1726234774) ["SW"]=> string(11) "meteobridge" ["T"]=> int(19) ["TMX"]=> float(19.1) ["TMN"]=> float(18.8) ["H"]=> int(53) ["P"]=> float(1008.6) ["W"]=> float(5.6) ["G"]=> float(14.5) ["B"]=> int(274) ["R"]=> int(0) ["RR"]=> int(0) ["TIN"]=> float(24.7) ["HIN"]=> int(46) ["UTime"]=> int(1726238372) ["SWTime"]=> int(1726238372) ["TTime"]=> int(1726238372) ["TMXTime"]=> int(1726238372) ["TMNTime"]=> int(1726238372) ["HTime"]=> int(1726238372) ["PTime"]=> int(1726238372) ["WTime"]=> int(1726238372) ["GTime"]=> int(1726238372) ["BTime"]=> int(1726238372) ["RTime"]=> int(1726238372) ["RRTime"]=> int(1726238372) ["TINTime"]=> int(1726238372) ["HINTime"]=> int(1726238372) ["D"]=> float(9.2) ["DTime"]=> int(1726238372) ["A"]=> float(17.7) ["ATime"]=> int(1726238372) }
    
    Success

    poi aggiungendo anche il codice debug che mi ha scritto lei nella parte in cui si sovrascrive meteotemplateLive.txt, il risultato è questo

    Codice:
    timeId 1:
    string(4) "Time"
    
    mtLive 1:
    string(470) "{"U":1726234474,"SW":"meteobridge","T":19,"TMX":19.1,"TMN":18.9,"H":53,"P":1008.6,"W":5.2,"G":9.7,"B":237,"R":0,"RR":0,"TIN":24.7,"HIN":46,"UTime":1726238969,"SWTime":1726238969,"TTime":1726238969,"TMXTime":1726238969,"TMNTime":1726238969,"HTime":1726238969,"PTime":1726238969,"WTime":1726238969,"GTime":1726238969,"BTime":1726238969,"RTime":1726238969,"RRTime":1726238969,"TINTime":1726238969,"HINTime":1726238969,"D":9.2,"DTime":1726238969,"A":17.8,"ATime":1726238969}"
    
    liveInput 1:
    array(32) { ["U"]=> int(1726234474) ["SW"]=> string(11) "meteobridge" ["T"]=> int(19) ["TMX"]=> float(19.1) ["TMN"]=> float(18.9) ["H"]=> int(53) ["P"]=> float(1008.6) ["W"]=> float(5.2) ["G"]=> float(9.7) ["B"]=> int(237) ["R"]=> int(0) ["RR"]=> int(0) ["TIN"]=> float(24.7) ["HIN"]=> int(46) ["UTime"]=> int(1726238969) ["SWTime"]=> int(1726238969) ["TTime"]=> int(1726238969) ["TMXTime"]=> int(1726238969) ["TMNTime"]=> int(1726238969) ["HTime"]=> int(1726238969) ["PTime"]=> int(1726238969) ["WTime"]=> int(1726238969) ["GTime"]=> int(1726238969) ["BTime"]=> int(1726238969) ["RTime"]=> int(1726238969) ["RRTime"]=> int(1726238969) ["TINTime"]=> int(1726238969) ["HINTime"]=> int(1726238969) ["D"]=> float(9.2) ["DTime"]=> int(1726238969) ["A"]=> float(17.8) ["ATime"]=> int(1726238969) }
    
    timeId 3:
    string(4) "Time"
    
    liveInput 3:
    array(32) { ["U"]=> int(1726234474) ["SW"]=> string(11) "meteobridge" ["T"]=> int(19) ["TMX"]=> float(19.1) ["TMN"]=> float(18.9) ["H"]=> int(53) ["P"]=> float(1008.6) ["W"]=> float(5.2) ["G"]=> float(9.7) ["B"]=> int(237) ["R"]=> int(0) ["RR"]=> int(0) ["TIN"]=> float(24.7) ["HIN"]=> int(46) ["UTime"]=> int(1726238969) ["SWTime"]=> int(1726238969) ["TTime"]=> int(1726238969) ["TMXTime"]=> int(1726238969) ["TMNTime"]=> int(1726238969) ["HTime"]=> int(1726238969) ["PTime"]=> int(1726238969) ["WTime"]=> int(1726238969) ["GTime"]=> int(1726238969) ["BTime"]=> int(1726238969) ["RTime"]=> int(1726238969) ["RRTime"]=> int(1726238969) ["TINTime"]=> int(1726238969) ["HINTime"]=> int(1726238969) ["D"]=> float(9.2) ["DTime"]=> int(1726238969) ["A"]=> float(17.8) ["ATime"]=> int(1726238969) }
    
    timeId 3:
    string(4) "Time"
    
    liveInput 3:
    array(32) { ["U"]=> int(1726234474) ["SW"]=> string(11) "meteobridge" ["T"]=> int(19) ["TMX"]=> float(19.1) ["TMN"]=> float(18.9) ["H"]=> int(53) ["P"]=> float(1008.6) ["W"]=> float(5.2) ["G"]=> float(9.7) ["B"]=> int(237) ["R"]=> int(0) ["RR"]=> int(0) ["TIN"]=> float(24.7) ["HIN"]=> int(46) ["UTime"]=> int(1726238969) ["SWTime"]=> int(1726238969) ["TTime"]=> int(1726238969) ["TMXTime"]=> int(1726238969) ["TMNTime"]=> int(1726238969) ["HTime"]=> int(1726238969) ["PTime"]=> int(1726238969) ["WTime"]=> int(1726238969) ["GTime"]=> int(1726238969) ["BTime"]=> int(1726238969) ["RTime"]=> int(1726238969) ["RRTime"]=> int(1726238969) ["TINTime"]=> int(1726238969) ["HINTime"]=> int(1726238969) ["D"]=> float(9.2) ["DTime"]=> int(1726238969) ["A"]=> float(17.8) ["ATime"]=> int(1726238969) }
    
    
    
    string(3) "9.2" int(1726238973)
    
    string(4) "17.8" int(1726238973)
    
    string(470) "{"U":1726234474,"SW":"meteobridge","T":19,"TMX":19.1,"TMN":18.9,"H":53,"P":1008.6,"W":5.2,"G":9.7,"B":237,"R":0,"RR":0,"TIN":24.7,"HIN":46,"UTime":1726238969,"SWTime":1726238969,"TTime":1726238969,"TMXTime":1726238969,"TMNTime":1726238969,"HTime":1726238969,"PTime":1726238969,"WTime":1726238969,"GTime":1726238969,"BTime":1726238969,"RTime":1726238969,"RRTime":1726238969,"TINTime":1726238969,"HINTime":1726238969,"D":9.2,"DTime":1726238973,"A":17.8,"ATime":1726238973}" Success
    a questo punto però mi pare che il file meteotemplateLive.txt non si sovrascriva più

    e sul meteobridge adesso ho un errore diverso: link
    Ultima modifica di simonicco : 13-09-2024 alle ore 17.13.39

  12. #42
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Non è chiaro perchè i dati non vengano aggiornati nel file.

    e sul meteobridge adesso ho un errore diverso: link
    Sono le prime 2 righe del debug:
    Codice:
    timeId 1:
    string(4) "Time"
    Meteobridge riporta errore senza indicare cosa non va.

    Cordiali saluti.

  13. #43
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Sto tentando di investigare la questione più a fondo.

    Se provo ad eliminare il file meteotemplateLive.txt dal server e rilancio manualmente api.php, mi ricrea il file meteotemplateLive.txt con gli ultimi dati che aveva meteotemplateLive.txt

    Ciò credo significhi che
    - api.php prende l'ultima versione di meteotemplateLive.txt, salvata nella cartella cache, ma
    - api.php non sovrascrivere meteotemplateLive.txt con i nuovi dati

    Quindi ora sarebbe da capire il perchè non sovrascrive: ovvero se il problema è la mancata ricezione di dati o se è effettivamente la mancata scrittura.

    Potete aiutarmi a capire questa questione?
    Eventualmente posso anche darle nuome utente e password in privato.

  14. #44
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Ora ho provato a
    - ridurre il tempo di comunicazione tra Meteobridge e Meteotemplate
    - aumentare il numero di tentativi di comunicazione tra Meteobridge e Meteotemplate

    E ho notato che pare ci sia comunicazione ogni tanto:
    infatti nel mio sito meteo potete vedere che sulla destra ogni tanto vi è l'indicazione "ONLINE"; però sul portale di Meteobridge mi segnala sempre l'errore e le due X rosse...

    ULTERIORE AGGIORNAMENTO:
    ora anche sul portale di Meteobridge sembra essere tutto ok...mah, io davvero non capisco...
    Però mi aspetto che tra un po' (ore o giorni) torni tutto a bloccarsi...
    Ultima modifica di simonicco : 16-09-2024 alle ore 15.03.54

  15. #45
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    Ora ho provato a
    - ridurre il tempo di comunicazione tra Meteobridge e Meteotemplate
    - aumentare il numero di tentativi di comunicazione tra Meteobridge e Meteotemplate

    E ho notato che pare ci sia comunicazione ogni tanto:
    infatti nel mio sito meteo potete vedere che sulla destra ogni tanto vi è l'indicazione "ONLINE"; però sul portale di Meteobridge mi segnala sempre l'errore e le due X rosse...

    ULTERIORE AGGIORNAMENTO:
    ora anche sul portale di Meteobridge sembra essere tutto ok...mah, io davvero non capisco...
    Però mi aspetto che tra un po' (ore o giorni) torni tutto a bloccarsi...
    Attualemnte vedo anche io Meteobridge indicato online. A me pare sia stabile.

    Quindi modificando la configurazione sulla comunicazione con Meteobridge ha risolto?

    Ad ogni modo, ritengo che sarebbe interesse dello staff di Meteobridge e Meteotemplate, prevenire l'insorgere di tali problemi o quantomeno, provvedere con dei controlli ad avvisare i loro utilizzatori qualora sia stata fatta una configurazine errata.

    Inoltre, il fatto che su Meteobridge venga riportata la presenza di un errore senza fornire indicazioni in merito, a mio parere, è un bag da parte loro, che andrebbe risolto.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 16-09-2024 alle ore 18.55.52

  16. #46
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Quindi modificando la configurazione sulla comunicazione con Meteobridge ha risolto?
    Sembra di sì...la cosa mi pare strana...ma nel frattempo incrocio le dita e spero duri.

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Inoltre, il fatto che su Meteobridge venga riportata la presenza di un errore senza fornire indicazioni in merito, a mio parere, è un bag da parte loro, che andrebbe risolto.
    Adesso anche sul portale Meteobridge sembra tutto regolare, senza errori...


    Come detto, speriamo resti così e basta.
    Grazie mille per il supporto.

  17. #47
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Eccomi di nuovo qua con un nuovo stop alla connessione tra Metebridge e Meteo template/Altervista...
    Stavolta si è presentato la scorsa notte, verso l'1; ho notato che, sempre stanotte, ho ricevuto una mail da Altervista dove mi si diceva che il mio spazio disponibile si stava esaurendo (per via di una cam che carica online le immagini e sono in certe situazioni si eliminano quelle vecchie).
    Che ci sia un nesso tra le due cose?
    Grazie.

  18. #48
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Tra l'altro ho anche notato che adesso non funzionano le pagine .php

    Ad esempio questa che dovrebbe darmi l'ultima immagine della cam
    https://simonicco.altervista.org/IP_...NzA1Ny4wLjAuMA..
    in realtà rimane fissa su un'immagine vecchia

    Poi, ho provato ad aggiornare la versione php a 8.0 o 8.2 ma dopo pochi minuti torna da solo su 7.3

  19. #49
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    Eccomi di nuovo qua con un nuovo stop alla connessione tra Metebridge e Meteo template/Altervista...
    Stavolta si è presentato la scorsa notte, verso l'1; ho notato che, sempre stanotte, ho ricevuto una mail da Altervista dove mi si diceva che il mio spazio disponibile si stava esaurendo (per via di una cam che carica online le immagini e sono in certe situazioni si eliminano quelle vecchie).
    Che ci sia un nesso tra le due cose?
    Grazie.
    Forse, anche se solitamente non pi pare che ci sia il blocco da parte di AlterVista per le chiamate esterne in questi casi. Semmai, è più probaile che ci possa essere un blocco lato AlterVista, nel caso in cui ci siano molte chiamte esterne in lasso breve di tempo da parte di API o scrip esterni al sito. In tali casì, al fine di evitare nel server un sovraccarico, può scattare un blocco preventivo per tali risorse.

    Almeno per il caso precedente, se non ricordo male, non risultava che ci fosse un blocco lato AlterVista.

    Il blocco su Meteobridge realtivo all'api di Meteotemplate si è ripresentato spontaneamente senza che siano state eseguite modifiche di alcun tipo?

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    Tra l'altro ho anche notato che adesso non funzionano le pagine .php

    Ad esempio questa che dovrebbe darmi l'ultima immagine della cam
    https://simonicco.altervista.org/IP_...NzA1Ny4wLjAuMA..
    in realtà rimane fissa su un'immagine vecchia
    Io andando sul sito dalla home, non ho visto pagine non caricate. Ho notato solo che Metebridge viene indicato nuovamente offline (come già riportato da lei).

    Riguardo all'immagine della cam, credo che sia un problema di natura diversa. Io adesso visualizzo l'immagine così:



    Qui mi sembra si tratti più di un problema della cam, che per qualche motivo si è bloccata in data 21-09-2024. Difatti, l'immagine presenta un blocco all'inizio del rendering ed il resto di essa risulta grigia. Se ci fosse stato un blocco nell'invio dell'immagine, mi aspetterei un file illegibile, poichè incompleto a livello strutturale.

    Ha avuto modo di verificare che la cam stia effettivamente funzionando correttamente?

    Citazione Originalmente inviato da simonicco Visualizza messaggio
    Poi, ho provato ad aggiornare la versione php a 8.0 o 8.2 ma dopo pochi minuti torna da solo su 7.3
    Controlli la versione di PHP nel file .httaccess. Se ci sta AddHandler av-php73 .php, basta modificare av-php73 con av-php80 (per php 8.0) o con av-php82 (per php 8.2). Dopo aver salvato, attenda cira 30 min (il tempo che le modifiche siano rese effettive).

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 23-09-2024 alle ore 17.08.06

  20. #50
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Forse, anche se solitamente non pi pare che ci sia il blocco da parte di AlterVista per le chiamate esterne in questi casi. Semmai, è più probaile che ci possa essere un blocco lato AlterVista, nel caso in cui ci siano molte chiamte esterne in lasso breve di tempo da parte di API o scrip esterni al sito. In tali casì, al fine di evitare nel server un sovraccarico, può scattare un blocco preventivo per tali risorse.
    Secondo questo, allora ha senso che riprovi a ridurre la frequenza di caricamento dell'api tramite meteobridge a 5 min. Lo faccio immediatamente.


    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Il blocco su Meteobridge realtivo all'api di Meteotemplate si è ripresentato spontaneamente senza che siano state eseguite modifiche di alcun tipo?
    Si esatto, si è ripresentato spontaneamente, l'unica cosa è che stavolta ho notato lo spazio su server pieno, quindi mi è venuto il dubbio le due cose fossero collegate.


    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Io andando sul sito dalla home, non ho visto pagine non caricate. Ho notato solo che Metebridge viene indicato nuovamente offline (come già riportato da lei).
    Riguardo all'immagine della cam, credo che sia un problema di natura diversa.
    [...]
    Qui mi sembra si tratti più di un problema della cam, che per qualche motivo si è bloccata in data 21-09-2024. Difatti, l'immagine presenta un blocco all'inizio del rendering ed il resto di essa risulta grigia. Se ci fosse stato un blocco nell'invio dell'immagine, mi aspetterei un file illegibile, poichè incompleto a livello strutturale.
    Ha avuto modo di verificare che la cam stia effettivamente funzionando correttamente?
    Per quanto riguarda questo forse ho capito il problema, cercando di debuggare quante più cose possibili devo aver fatto un po' di confuzione e adesso cercherò di mettere a posto, lasciamo pure perdere questo punto, dovrei risolvere in qualche modo.

  21. #51
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Forse, e dico, FORSE, ho capito il problema. O meglio, lo ipotizzo.
    Vi riporto il mio ragionamento e vi chiedo solo di dirmi se ha senso o no.

    Partiamo con dire che debuggando un po' il file api.php ho notato che si generava un errore su questo IF
    Codice PHP:
    if(array_key_exists("R".$timeId,$liveInput)){
    è l'errore diceva che il secondo argomento non era valido.

    Quindi ho analizzato il secondo argomento ed infatti era NULL.
    A questo punto dovevo capire da dove derivava il NULL e tutto nasceva dal file meteotemplatelive.txt che effettivamente era un file di testo vuoto.

    A questo punto ho semplicemente provato a rinominare meteotemplatelive.txt (per non cancellarlo), di seguito il file api.php ha ripreso a funzionare fino in fondo senza errori e si è generato un nuovo file meteotemplatelive.txt con valori reali.

    Meteobridge ora è in grado di chiamare la funzione api.php senza problemi (non ci sono più le X rosse) e tutto funziona regolamente.

    Per cui la mia ipotesi è che , dato il riempimento dello spazio nel server di qualche giorno fa, probabilmente la chiamata che voleva riscrivere il file meteotemplatelive.txt non è andata completamente a buon fine, ma ha solo cancellato quello che c'era.
    da lì si è generato il file meteotemplatelive.txt vuoto che ha causato i problemi.

  22. #52
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,227

    Predefinito

    Sì, il ragionamento ha una logica valida. Ciò però, può avvenire solo se lo spazio necessario alla scrittura del file non è dispoibile. Ora il file meteotemplatelive.txt non mi sembra che anche quando è scritto con tutti i dati, sia particolarmente pesante.

    Dopo l'avviso di AlterVista del rischio di esaurimento spazio, lo spazio è rimasto esaurito per un certo tempo?

    Anche l'altra volta che siè verificato il blocco l'e era arrivata una comunicazione dello spazio quasi esaurito o questa è la prima volta?

    Comuque con le precedenti verifiche, avevamo già appurato che la causa del blocco era l'array $liveInput che risultava NULL a causa del file meteotemplatelive.txt che non viene scritto.

    I motivi della mancata scrittuara del file, essenzialmente sono:
    - Un blocco delle comunuicazioni esterne (o disservizio temporaneo) lato AlterVista.
    - Un blocco da parte di Metebridge (o disservizio temporaneo) verso AlterVista.
    - Spazio esaurito sul sito.

    Qui bisogna andare per esclusione.

    Nel primo caso, tenendo su Meteobridge le chiamate impostate ad intervalli di 5 min, non dovrebbero esserci problemi. Quindi questa causa dovrebbe essere esclusa ora.
    Nel secondo caso, se fosse questo la causa, sarebbe da capire il perchè avvenga. Questa causa potrebbe essere plausibile.
    Nel terzo caso, si può prevenire il problema limitando il numero delle immagini salvate nel sito. Questa causa è plausibile qualora si veirifichino le condizioni.

    Poi restano i disservizi temporanei occoasionali, abmo le direzioni (AlterVista <-> Metebridge ). Qui non c'è molto che si possa fare per impedirlo, se le cause sono esterne al sito.

    Per prevenire il blocco, si può provare a modificare api.php così;
    Codice PHP:
    function isArrayNull($array){
    if(
    $array === array_filter($array, 'is_null')){
    return
    true;
    }else{
    return
    false;
    }
    }

    // read previous live data
    if(file_exists($base."meteotemplateLive.txt")){

    // get latest date from cache file
    $mtLive = file_get_contents($base."meteotemplateLive.txt");
    $liveInput = json_decode($mtLive,true);

    if(
    isArrayNull($liveInput)){
    $mtLive = file_get_contents($base."cache/meteotemplateLive2.txt");
    $liveInput = json_decode($mtLive,true);
    }

    // ...........................................................

    }
    Quindi, crei nella cartella cache/ il file meteotemplateLive2.txt (o con altro nome oppure, se esiste già un file di copia in cache/, richiami quello). Nel file meteotemplateLive2.txt ricopi i dati validi di meteotemplateLive.txt (dati validi in riferimento all'array $liveInput, non inteso come dati aggiornati).

    In tal modo, se dovesse ripresentarsi il problema del file che non viene scritto, $liveInput verrà valorizzato con il secondo file, facendo risultare l'array $liveInput diverso da NULL, evitando così il blocco (o almeno è quanto dovrebbe avvenire a rigor di logica).

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 24-09-2024 alle ore 18.41.33

  23. #53
    simonicco non è connesso Utente AlterBlog
    Data registrazione
    02-12-2020
    Messaggi
    30

    Predefinito

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Dopo l'avviso di AlterVista del rischio di esaurimento spazio, lo spazio è rimasto esaurito per un certo tempo?
    Per una notte intera probabilmente.

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Anche l'altra volta che siè verificato il blocco l'e era arrivata una comunicazione dello spazio quasi esaurito o questa è la prima volta?
    Non sempre mi arriva l'e-mail quindi non saprei.


    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Per prevenire il blocco, si può provare a modificare api.php così;
    [...]
    Quindi, crei nella cartella cache/ il file meteotemplateLive2.txt (o con altro nome oppure, se esiste già un file di copia in cache/, richiami quello). Nel file meteotemplateLive2.txt ricopi i dati validi di meteotemplateLive.txt (dati validi in riferimento all'array $liveInput, non inteso come dati aggiornati).
    In tal modo, se dovesse ripresentarsi il problema del file che non viene scritto, $liveInput verrà valorizzato con il secondo file, facendo risultare l'array $liveInput diverso da NULL, evitando così il blocco (o almeno è quanto dovrebbe avvenire a rigor di logica).
    Perfetto, procedo ad aggiornare api.php

    Grazie per l'aiuto.

Pagina 2 di 2 PrimoPrimo 12

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •