Page 1 of 2

Vad betyder detta som kommer i loggen??

Posted: Tue 24 Apr 2012, 17:33
by sonnyboy
Om jag förstår rätt så säger den att den inte kan hämta temperatur från kärsta BM med id 25 stämmer det?
Men den har aldrig missat vad jag kan se.

Level 1) Index and length must refer to a location within the string.
Parameter name: length

StackTrace for Level 1:
at System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy)
at SwitchKing.Server.BusinessAccess.DataCollection.Collectors.File.SimpleFlatFileCollector.GetDataSourceValueFromItemRow_PositionBased(FileData fd, String rowContent, Int32 rowIdx)
{BusinessAccessDataCollection - Collection} --<Error> -- 2012-04-24 18:25:20 -- Failed to collect data from row 0 for DataSource with id 25, name Kärsta BM. Exception:
System.ArgumentOutOfRangeException

Level 1) Index and length must refer to a location within the string.
Parameter name: length

StackTrace for Level 1:
at System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy)
at SwitchKing.Server.BusinessAccess.DataCollection.Collectors.File.SimpleFlatFileCollector.GetDataSourceValueFromItemRow_PositionBased(FileData fd, String rowContent, Int32 rowIdx)

Re: Vad betyder detta som kommer i loggen??

Posted: Tue 24 Apr 2012, 17:46
by Martin
Stämmer att det är problem att läsa värden från källan. Om det är så att källan läses vid ändring så skulle det möjligtvis kunna vara så att det som skapar filen på disk sparar en fil som är tom först, för att sedan fylla på den och därefter spara ytterligare en gång. Det ger två triggningar för insamling där den ena bara får en tom sträng.

Re: Vad betyder detta som kommer i loggen??

Posted: Tue 24 Apr 2012, 17:59
by sonnyboy
Martin wrote:Stämmer att det är problem att läsa värden från källan. Om det är så att källan läses vid ändring så skulle det möjligtvis kunna vara så att det som skapar filen på disk sparar en fil som är tom först, för att sedan fylla på den och därefter spara ytterligare en gång. Det ger två triggningar för insamling där den ena bara får en tom sträng.
Då var det som jag misstänkte, då ändrar jag tidsintervallen när filen hämtas.
Filen skapas 1 ggr i minuten och om jag kollar så är den alltid klar innan 3 sekunder gått, så SK får hämta den med en intervall på 3 minuter och 13 sekunder då ska det inte vara någon fara hoppas jag.

Re: Vad betyder detta som kommer i loggen??

Posted: Tue 24 Apr 2012, 19:29
by Martin
Om Switch King samlar in filen med ett givet intervall så kan det ju fortfarande bli fel - lite beroende på hur applikationen som skapar filen beter sig.
Jag skulle prova att antingen ange att Switch King läser filen då den ändras alternativt välja att Switch King får ta bort filen efter att inläsningen är färdig. Det kan hända att det sistnämnda gör så att filen bara ändras en gång av "avsändande" applikation - då den fylls på med data.

Re: Vad betyder detta som kommer i loggen??

Posted: Wed 25 Apr 2012, 17:48
by sonnyboy
Martin wrote:Om Switch King samlar in filen med ett givet intervall så kan det ju fortfarande bli fel - lite beroende på hur applikationen som skapar filen beter sig.
Jag skulle prova att antingen ange att Switch King läser filen då den ändras alternativt välja att Switch King får ta bort filen efter att inläsningen är färdig. Det kan hända att det sistnämnda gör så att filen bara ändras en gång av "avsändande" applikation - då den fylls på med data.
Du har helt rätt Martin, jag har nu gjort så här, Bm skapar filen filen, sedan har jag en schemalagd aktivitet som kopierar filen till d: och därifrån så får SK hämta filen och sedan ta bort den efter hämtning.
Har nu bara fått 4 error sen klockan 14.00 idag. Det konstiga med det hela är att jag gör exakt likadant med solstrålingen och den blir det aldrig fel på.
Provade även med att hämta temperaturen från temperatur.nu och döm om min förvåning på dan när det var 10,9 grader så fick SK det till 109
sk.png

Re: Vad betyder detta som kommer i loggen??

Posted: Wed 25 Apr 2012, 19:50
by Martin

Re: Vad betyder detta som kommer i loggen??

Posted: Thu 26 Apr 2012, 21:08
by sonnyboy
Loggen bara fylls på med error, men datakällorna uppdateras som den ska när filen ändras.

{BusinessAccessDataCollection - FileSystemWatcher} --<Warning> -- 2012-04-26 21:09:10 -- Did not find any matching FileSystemWatchers for datasource with id 24.
{BusinessAccessDataCollection - FileSystemWatcher} --<Warning> -- 2012-04-26 21:09:10 -- Request was made to create a FileSystemWatcher for the datasource with id 24, name Sol Väst UteBelysning but the address file://logger/Temp/sol.txt does not match criterias.
{BusinessAccessDataCollection - FileSystemWatcher} --<Warning> -- 2012-04-26 21:09:10 -- Did not find any matching FileSystemWatchers for datasource with id 23.
{BusinessAccessDataCollection - FileSystemWatcher} --<Warning> -- 2012-04-26 21:09:10 -- Request was made to create a FileSystemWatcher for the datasource with id 23, name Sol Väst but the address file://logger/Temp/solvast.txt does not match criterias.

Har nu gjort om så att det finns 2 olika filer eftersom det är 2 datakällor.
Datakällorna är inställda på att hämta när filen ändras, jag har provat att låta SK ta bort filen men med samma resultat.
BeyondMeasure byter filen varje gång ett nytt värde skapas.

jag har startat om tjänsterna flera ggr men inget verkar hjälpa,
har ni några fler tips?

Re: Vad betyder detta som kommer i loggen??

Posted: Thu 26 Apr 2012, 22:04
by PerM
sonnyboy wrote: BeyondMeasure byter filen varje gång ett nytt värde skapas.
Om det hjälper så kan du få den att bara rensa filen genom att ändra ingångarna på komponenten som skriver filen, i stället för att först radera den.

Re: Vad betyder detta som kommer i loggen??

Posted: Fri 27 Apr 2012, 07:59
by Martin
Inte med riktigt på sökvägen till filen... Den file://logger/Temp/sol.txt är ju ingen riktig sökväg. Switch King kommer aldrig att kunna se när denna ändras eftersom filen inte finns.
Antar att du fyller på datakällan från annat håll? I så fall fungerar inte "ändringsdetektering".

Om du bara matar datakällan via REST så kommer du inte ifrån just dessa varningar i loggen. I nuvarande klient finns inget sätt att ange att en datakälla bara ska fyllas på från externa källor (typ REST eller via en Duo). Det fungerar ändå, men man kommer att få varningarna i loggen. I kommande klient så kommer det finnas möjlighet att ange att datakälla ska fyllas på från externa källor, men funktionen blir samma som idag med den skillnaden att det inte blir varningar i loggen.

Re: Vad betyder detta som kommer i loggen??

Posted: Fri 27 Apr 2012, 11:54
by sonnyboy
Martin wrote:Inte med riktigt på sökvägen till filen... Den file://logger/Temp/sol.txt är ju ingen riktig sökväg. Switch King kommer aldrig att kunna se när denna ändras eftersom filen inte finns.
Antar att du fyller på datakällan från annat håll? I så fall fungerar inte "ändringsdetektering".
Jag fyller i så här där datakällan finns \\logger\Temp\sol.txt det ändras sedan av SK till file://logger/Temp/sol.txt när jag tycker på ok

Datakällan ligger på en annan dator med en utdelad mapp som heter temp.
Nu har jag ställt in så att Sk hämtar värdet var tredje minut och hittils idag har jag bara fått 6 error i skrivande stund och det kan jag leva med, det konstiga är ju att solstrålingen ligger på samma ställe i en annan txt fil och den blir det inte error på.
Men då vet jag att i kommande klient så kommer det att fungera.
SK3.png