Lumet ovat jo (melkein) sulanneet joten kait se ukkoskausi siellä nurkan takana häämöttää ;D
Talven aikana ruuvailtu tapaus on nyt päässyt niin pitkälle että oli aika laittaa sivulle BETA testausta varten.
Päivityksestä tuli tavallaan suurin mitä NSD/EB:lle koskaan tehty, nimittäin dumppasin roskiin koko vanhan js-filun ja käytin siitä vain joitain osia. EB 2015 painottaa niin paljon kuin mahdollista reaali-aikaisuuteen sisältäen muutaman yllärin ;)
Webpuoli
- Itse tutka-skriptissä täysi responsiivisuus (oman sivun tutka saattaa kaipaa hienosäätöjä vielä)
- Karttamoottorina on nyt uusin Openlayers 3
- Lisäsivuna täysruutu-versio
- Viime ja lähimmät 10 iskua-taulukot
- 3 sadetutkat, FMI Suomen tutka, YR Skandinavian tutka sekä RadarCZ Euroopan tutkakuva. Kysyin YR:ltä ja sain myönteisen vastuksen että saisko käyttää heidän public-WMS:ää. Tapauksessa RadarCZ niin heidän sivun lisenssi sallii käytön. Kaikki tutkat ovat (osittain) etähallittavissa täältä käsin jos muutoksia ilmenee.
- Asetusnamiskan alta löytyy kasa uusia asetuksia, kuten mahdollisuus säätää sadetutkan läpinäkyvyyttä sekä mobiililaitteella laittaa tutka seuraamaan sijantiasi ;)
Tausta
- Websocket-tuki. Filut on mahdollista feedata websocketilla, joka tarkoittaa nopeammat päivitykset heti kun tiedosto on muuttunut. Websocket ei ole mahdollista normi webhotellissa vaan vaatii VPS:än tai dedikoidun serverin. EB toimii myös vanhalla kunnon ajaxilla jollei websocketit onnistu.
- Blitzortungin reaaliaikasta dataa käytössä 250 km säteellä asemasta, sen ulkopuolella on päivitysväli 1 minuutti
- NSBackend päivitetty ja siinä on nyt mahdollistä säätää uppaus-tiheyttä
http://www.nordicweather.net/ukkostutka.php?fi
:)
Pari lisäjuttua jota unhotin tuosta listasta ovat:
- Se muistaa (melkein kaikki) asetukset kuten asetetun keskipisteen, valitut kartat jne. Parit jätin tarkoituksella pois muistamisesta.
- Ehkä paras näin sivunhaltijan kaistan kannalta, se sammuttaa datahaku-päivitykset jos sivu ei ole päällimmäisenä (eli jos katsoo esim toista tabia selaimessa). Päivitykset jatkuvat kun sivu palaa päällimmäiseksi (eikä maksimiaikaa ei ole ylitetty). Tämä on sen takia ettei pystyisi "parkkeeraamaan" sivulle tai avata sivu taustalle syömään kaistaa.
Selvennystä tuohon websocket <> ajax...
Suurin ero katselijan näkökulmasta niissä on että
- Ajax päivittää tiedostot ajastetun väliajoin (esim 10 sekuntia) riippumatta siitä että onko tiedosto päivittynyt vai ei.
- Websocketissa tuoreet filut lähetetään selaimelle heti ja ainoastaan vain jos ovat päivittyneet.
Huuh huh taas pukkaa hienoa päivitystä. Pitäisi alkaa etsimään kolviin uusi kärki jotta pääsisi juottamaan.
Yksi typo löytyi asetuksista:
"piilota keksipiste" :D
Lainaa"piilota keksipiste"
Kun löydät sen keksipisteen ja klikkaat sitä alkaa ruudusta tulemaan keksejä sekä torvet ja fanfaarit alkaa soimaan ;D
Taisin myös siivota pari vielä käytössä olevaa sanaa ulos suomenkielisestä käännöksestä kun näkyy olevan esim SEC :P
FMI-datasta EB:ssä hitusen..
Salamadata on saanut samanveroisen "statuksen" mitä BO ja Boltek, eli iskut näytetään samalla tavalla väärikoodilla sekä on mukana käppyrässä ja päivätilastossa. Iskut kartalla pitää vielä tarkistaa kunhan tulisi jokunen isku silleen sopivasti että huomaan ne ajoissa.
Data syötetään EB:ssä websocketilla mitä tarkoittaa että päivittyvät heti kun tulee uunista dedillä. Tämä nopeuttaa erityisesti sadetutkan automaatti-päivityksiä.
Sadetutkasta sen verran että se on ollut varsinkin viime päivinä pätkivä. Yksi syy lienee että sen hakuun FMI:ltä tarvis keksii "ikiliikkuja" joka edellisen kuvan jälkeen siirtyis tarkisetelemaan milloin seuraava kuva ilmestyy. Ongelma on siinä että piäivitystiheys on 5 minuuttia ja datan tulo FMI:lle vaihetelee hitusen joten esim :00 kuva on jokus saatavilla :03, joskus vasta :06 ja joskus todellä myöhään vasta :12, ja kaikkea siltä väliltä. Haun tekee hitusen kimurantiksi on se että haku-urlissa pitää olla oikea aikaleimakin mukana.
Toinen syy voi olla FMI:n päässä, viimeksi kun tein vika-ilmon sain vastauksena että sadetutkan datassa ollut häiriöitä ja että kevään aikana on tulossa softa-päivitys joka toivottavasti korjaisi niitä.
Boltek-puolella ilmeni "pikku" probleema NSBackendissa kun pari testaajaa asensi sen. Se laittaa desimaalit Windowsin asetusten mukaan kommaksi (2,35) tai pilkuksi (2.35). Jos se laittaa sen kommaksi ei laskut, kuten kordinaattien laskeminen, toimi.
Ja vaikka olisi toiminutkin niin viimeistään websivulla olisi errorit ilmenneet koska javascript, aivan kuten PHP, vaatii desimaalit pilkkuina.
M$-amatöörit taas asialla Visual Studiossa kun ei niinkään simppeliä asiaa olla tehty standardisoituna (että desimaalimerkki olisi ainakin ohjeman sisäisesti aina pilkku että laskut toimii maasta/asetuksista riippumatta)
Ongelmaan löytyi kyllä aika helppo ratkaisu (mikäli se toimii) mutta silti. Nyt testaamista hidastaa hitusen atmosfäärin kevät-hiljaisuus kun ei pahemmin aktiviteettiä Hollanti/Tanska-akselilla.... :P
EB 2015 julkaistu. Linkki löytyy BO:n foorumilta :P
Moro
Ihan kuin joku mättäisi bo_updatessa, jos laittaa Mybon falselle.
Esimerkiksi
rivi 51: $q = mysql_query("SELECT max(id) as mid from `$MyBodb`.`".$db_prefix."strikes`");
rivi 52: while ($m = mysql_fetch_array($q, MYSQL_BOTH)) {
rivi 53: $mid = $m[mid];
Antaa herjan
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/perantof/public_html/saa/saa2/bo_update.php on line 52
Mybolla toimii lähes ok, pieniä juttuja tuli esille
FMI sadetutkan aika on 1970-01-01 02:00
Vaikka salamaiskutäppä on päällä oletuksena, näkyy ainoastaan solut. Salamat tulee näkyville kun klikkaa solutäpän päälle. Salamat jää näkyville kun sammuttaa solutäpän, kuten pitääkin.
Tässä vielä virheilmoitukset bo_update errorista, useMyBo= falsella.
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 52
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 100
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 119
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 140
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 146
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 155
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 158
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 162
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 165
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 180
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 226
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 246
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 253
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 260
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 268
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 273
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/xxxx/public_html/saa/saa2/bo_update.php on line 340
bo_update..
Haiskahtaa siltä että $db_prefix on väärä ja mysli failaa. Se miksi se tuon tekee en vielä tiedä. Itse testasin sitä enimmäkseen Mybo:n kanssa. Toisaalta bo_updatessa ei ole mitään järin suuria muutoksia vanhaan, muutokset ovat lähinnä kosmeettiset eli että se tekee sen bogeo.txt-filun.
FMI-tutkalle saat socket-osoitteen multa YV:nä :)
Yleisesti ottaen en ole vielä varma että johtuuko erään toisen asennuksen pikku probleemat jostain laajemmasta viasta eb.js-filussa, vai onko se "paikallinen probleema", vai onko se websocketin ja ajaxin ero nopeudessa näin näkyvä mutta asiaa tutkitaan...
Pikku koe omalla sivulla: http://www.nordicweather.net/ukkostutka.php?fi
Se toimii nyt ajaxilla eikä websocketilla. Mitä kaivataan on varsinkin Mac:illa (ja erityisesti Safarilla) testaamista koska on osoittatunut että siitä suunnasta on tulossa "uusi IE" eli ne ongelmat silloin kun toimii täysin OK muilla setupeilla...
bo_update ilman MyBo:ta...
Kokeilin omalla ja mulla se toimis nyt ihan OK (ei ainakaan puskenut erroreita) ja iskutkin päivittyi bo_strikes-taulukkoon. Pikku korjaus tulee bo_strikes-taulukkoon joka johtuu EB:stä, tarvitaan id-numero iskulle jotta EB ei piirtäis noita iskuja tuplana.
Eli päivitystä pukkaa kohtapuolin ;)
Zippi päivitetty.
- bo_update.php
- eb.js
- Muutos bo_strike-taulukkoon:
* Joko poista vanha taulukko ja lisää uusi MyPHPAdminilla, taulukko löytyy mysql_bo.sql:stä
* tai lisää id-rivi nykyiseen: avaa bo_strike taulukko MyPHPAdminlilla => valitse Structure-tabi => "add 1 column" => Go =>
- column: id
- Type: INT
- täppä Auto_increment-laatikkoon
=> Go
Yhtä herjaa heittää vielä bo_updateen :) Ei näyttäis vaikuttavan toimivuuteen
Warning: ftp_put(/home/xxx/zzz/bo.txt): failed to open stream: No such file or directory in /home2/xxxx/zzzz/bo_update.php on line 389
There was a problem while uploading /home/xxx/zzz/bo.txt
Korjattu.
Korjaan nuo polut tuosta sun viestistä...
Juu nyt toimii hienosti. Sorry linkeistä... :-[
Näin äkkiseltään kokeiltuna näyttäisi kaikki toimivan macillä ja uusimmalla safarilla...
Zippi päivitetty sekalaisilla pikku fixauksilla.
- Tuplaiskut. bo_update.php rivit 233-238
- Muutama muu fixaus eb:jsään ja tracker.php:hen
Lainaus käyttäjältä: weatherc - lauantai, 18.04.2015, 21:16
Zippi päivitetty sekalaisilla pikku fixauksilla.
- Tuplaiskut. bo_update.php rivit 233-238
- Muutama muu fixaus eb:jsään ja tracker.php:hen
Mistä tuo viimeisin zippi löytyy ?
Tässä kun ollut pari päivää aktiviteettiä tuolla Pietarin tienoilla ja siten myös oma Boltekki napannut iskuja on tullut raavittua päätä parin pikkubugin kanssa. Näytää nyt olevan aika aisoissa mutta vaatii vielä pientä seurantaa.
- Livepäivitys hajosi edellisessä päivityksessä.
- Vaikka valittuna ollut "näytä vain alle vartin vanhat" on näytetty kaikki iskut palattaessa EB:n välilehteen (jolloin EB hakee tuoreimman geojsonin).
- "uudet iskut"-laskuri. Nyt se laskee bo/boltek/fmi erikseen, eikä nollaannu ennenaikaisesti. Se myös näyttää oikean luvun kun vaihtaa eri "tutkien" välillä.
- Se perusongelma eli homma menee jumiin kun on paaaaljon iskuja. Jo nyt tähän aikaan vuodesta on BO päässyt yli 24k iskuun tunnissa. Tämä on luonnollisesti aivan liian paljon jotta kaikki voisi piirtää kartalle.
Koska sattuneistä syistä haluan niin pitkään kun mahdollista välttää php- tai muuta vastaavaa häkkyrää syöttämään livedataa niin lähtökohtana on ollut että data tallennetaan staattiseen tekstifiluun. Tämän huono puoli on se että on pakko laittaa kaikki iskut samaan filuun. 24k iskua tekisi aikamoisen filun jo kooltaan puhumattakaan siitä että javascript/selain lähtisi oitis kahville. Näinollen bo_update rajoittaa iskujen määrää max 5000:een. Tämäkin on liikaa, 2000 vaikuttaa toimivan huomattavasti paremmin. (bo_update rivi 225 "LIMIT 5000" => "LIMIT 2000", saa vapaasti testailla että mikä olisi paras tuohon)
Datamaäärän kannalta olisi paras vaihtoehto sellainen jossa EB kertoo kartan reunakoordinaatit ja paluupostissa tulisi vain sen alueen iskut (+/- sopivan kokoinen reunapuskuri-alue). Mutta tähän en ole keksinyt mitään muuta vaihtoehtoa kun että taustalla pitäisi raksuttaa php- tai vastaava häkkyrä. Jo ajatus hirvittää siinä vaiheessa kun on 2000+ userssiä onlinessä.
Tiedän että BO:n oma kartta tekee tämän ja vielä websocketin kanssa mutta...
Zippi päivitetty.
Muutokset vain 2 filuun:
bo_update, rivit 217-225:
- lisätty $id = (int)$m[id]; joka puuttui
- muutettu rajaus 5000 => 2000 koska 5000 oli liikaa
eb.js
Tiedossa olevat bugit:
- BO solujen koko on edelleen 0 (formula jolla laskea kokoa koordinaattien perusteella uupuu)
- "Uudet iskut"-laskuri ei huomioi 250 km säteen sisäpuolelta tulevaa LIVE-dataa (näyttäisi vain 1 koko ajan)
No niin, ensimmäinen todellinen testi EB:lle kun paukatteli Benelux/Saksa/Tanska-alueella yli 30k iskun tuntitahdilla.
Alueella sopivasti myös Silekborgin tutka joten myös Live-osa tuli testattua.
Tulokset eivät olleet kovin hääppöiset...
1. Live ei toimi nykyisessä versiossa kun iskuja alkaa olemaan yli 5 sekunnissa (niitä oli yli 50/s parhaimmillaan)
2. 2000 iskun rajaus jotta selaimet ei menis tukkoon on aika avuton, se on 4 minuutin data tuolla tahdilla.
Korjaukset/ideat
1. Sain Liven toimimaan (sekä myös "uudet iskut"-laskurin) siten että iskuja piirretään kartalle "vain" kerran sekunnissa ja max 5 iskua per sekunti. Tulos oli itse asiassa ihan asiallisen "liven näköinen" vaikkei ihan kaikki iskut tulleetkaan kartalle.
2. "Vanhat iskut" kartta-tiiliksi geojsonin sijaan. Näin saadaan koko tunti (tai vaikkapa 120 min) näkösälle riippumatta siitä onko iskuja 100 vai 50k. Jotta "siivoustoiminto" jossa saa piilotettua vanhemmat kuin 15 min iskut toimisi voisi settejä tehdä 2 ja kartta näyttäisi sen oikean niistä.
Näyttää tällä hetkellä olevan kartat jumissa /kateissa.
Lainaus käyttäjältä: Zalama - torstai, 14.05.2015, 18:08
Näyttää tällä hetkellä olevan kartat jumissa /kateissa.
Olikin pikkuveijarit käyneet säätämässä konetta, Rebootti auttoi vaivaan.
Zippi päivitetty.
Muutoksia:
- Vanhat iskut tulee kartta-tiilenä. Se on mahdottomuus piirtää 30K iskua kartalle (selaimet kyykkää) joten jotta saadaan tunnin data on ainut keino laittaa vanhempi data kuvana ja piirtää vain uudet iskut.
- bo_updatessa tämän takia pikku muutoksia. bogeo.txt:ä ei enää tarvita + bo:txtiin generoidaan pikkusen dataa jotta saadaan taulukoihin tarvittaessa (täyte-)dataa iskuista jotka ovat karttatiilissä.
- sekava laskuri kartan yläkulmasta piilotettu. Siitä tulee sekava varsinkin siinä vaiheessa kun live-alueen sisällä tulee iskuja.
Kokeilussa Node-mapnik BO-tiilien generoinnissa.
Tähän asti on BO-tiilet generoitu Mapnikilla sokeasti kerran minuutissa tarvitaan niitä tai ei. Tämä on (tietoista) resurssien haaskausta... :P
Törmäsin tuossa Node.js:llä toimivaan node-mapnikiin joka generoi tarvittavat tiilet silloin kun niitä tarvitaan. Eli, ainakin teoriassa, kun ei ole ukkosia niin ei generoida tiiliäkään.
Koska node-mapnik "kuuntelee" porttia x on Nginxissä proxy-redirect asetettu jotta vanhat bo-tiilien urlit toimivat edelleen. Samalla pitäisi olla käytössä Nginxin proxy-cache johon se älivarastoi tiiliä 60 sekunniksi jotta samaa tiiltä samalla datalla ei generoitais useaan kertaan.
Systeemi toimii täysin automaattisesti eikä muutoksia tarvita EB-skriptiin.
250 km säteen live-päivitys lakkasi todennäköisesti toimimasta kun BO-devet vaihtoi portteja websockteille...Hrmmm...Päivitystä pukkaa kohtapuolin...
Hei
Ongelma löytää latauslinkkiä Henkan EuroBlitz 2015 scriptiin, olen rekisteröitynyt BO-foorumeille, mutta en edes haulla löydä mitään asiaan viittaavaa?
Saisko vähän apua tähän?
Kiitos
-Juha
Lainaus käyttäjältä: Trampas - torstai, 09.07.2015, 22:11
Ongelma löytää latauslinkkiä Henkan EuroBlitz 2015 scriptiin, olen rekisteröitynyt BO-foorumeille, mutta en edes haulla löydä mitään asiaan viittaavaa?
Saisko vähän apua tähän?
Sinulla pitää olla asema ja siten pääsy BO-foorumin internal-puolelle, sieltä se löytyy Applications-osastolta. ;)
Juu asema löytyy Boltekin StormTracker PCI, mut en vieläkään löydä mihin voisin sen lisätä tilitiedoissani, vai pitääkö ottaa yhteyttä ylläpitoon?
Kiitos
-Juha
Lainaus käyttäjältä: Trampas - keskiviikko, 15.07.2015, 16:40
Juu asema löytyy Boltekin StormTracker PCI, mut en vieläkään löydä mihin voisin sen lisätä tilitiedoissani, vai pitääkö ottaa yhteyttä ylläpitoon?
BO:ssa ei toimi Boltekit, vain Blitzortung-palikat, joten sinulla pitää olla BO-asema jotta pääset internal-puolelle.
Toisaalta Euroblitz-skripti pystyy näyttämään sekä Boltekin että BO:n datat samalla kartalla.