SwitchKing i Ubuntu problem

Supportfrågor för Switch King i Linux-miljö
Forum rules
För att kunna hjälpa dig med supportfrågor behöver vi så mycket information som möjligt.
Innan du skapar en ny tråd, läs gärna:
viewtopic.php?f=10&t=20
MickeMek
1 star
1 star
Posts: 9
Joined: Fri 08 Jun 2012, 06:46

SwitchKing i Ubuntu problem

Post by MickeMek » Fri 08 Jun 2012, 07:04

Hej!

Nu har jag suttit flera dagar i rad och försökt få SwitchKing att fungera på en Linux-server.
Tålamodet börjar tryta, och inget inlägg här på "Forat" är bra nog att hjälpa mig.

Problemet är detta:

Jag startar med följande växel: sudo mono /bin/SwitchKing/Bin/SwitchKing.exe daemon 127.0.0.1 8080 127.0.0.1 8800
Mono drar igång och följande syns på skärmen:
  • Framework address is: http://127.0.0.1:8080/SwitchKingFrameworkServiceHost
    REST address is: http://127.0.0.1:8788
    Version is: 2.0.2.10
    Build date for this version is: 2011-12-29 22:31:00

    Framework Service Starting
    Framework Service Running
    Invocation Service Starting
    Invocation Service Running
    Collector Service Starting
    Collector Service Running
    REST Service Starting
    REST Service Running

    Press [Enter] to stop running services
När jag försöker ansluta med en webbläsare mot Framework adressen så får jag fram en blank sida i webbläsaren.
Vad ska jag förvänta mig att se där? (FYI, om jag ansluter till 127.0.0.1:8080 så får jag bara "Bad request")
Inga felmeddelanden i konsolen eller i debug-loggen syns.

Här följer versioner på alla program som är installerade på servern:
tdtool - 2.1.1
SwitchKing - 2.0.2.10
telldusd - 2.1.1-1

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: SwitchKing i Ubuntu problem

Post by Martin » Fri 08 Jun 2012, 07:44

Switch King exponerar två olika tjänster för två olika typer av klienter - WCF-klienter (exempelvis Windows-klienten) eller REST-klienter (Android, iPhone/iPad, Windows Phone).

Den första tjänsten - WCF-tjänsten - är den som benämns som "Frameworktjänsten". Här krävs det en klient som pratar rätt språk för att ansluta - något som Windows-klienten (eller andra .NET-applikationer) klarar av. Denna (vanligtvis http://127.0.0.1:8080) kan du _inte_ ansluta till via webbläsaren. Däremot kan du ansluta med Windows-klienten mot denna adress.

REST-tjänsten, som i ditt fall verkar ligga på http://127.0.0.1:8788 kan du ansluta med till en webbläsare genom att exempelvis ange adressen http://127.0.0.1:8788/devices. Dock kräver Mono-ramverket på Linux att du anger username + password direkt i URL:en. Om du inte har ändrat detta får du en blank sida. Alla webbläsare stödjer inte username + password i URL, men exempelvis Firefox duger bra.

Alltså: http://user:pass@127.0.0.1:8788/devices om du kör Firefox direkt från Ubuntu-maskinen. Det bör ge dig en lista på dina enheter.

Det är också en bra idé att inte ange 127.0.0.1 utan att istället ange ditt interna IP i kommandoprompten. Vissa versioner av Mono kommer nämligen _bara_ att öppna för trafik från Localhost om du skriver 127.0.0.1, medan andra versioner av Mono (senare versioner) öppnar för trafik på alla IP:n på den lokala maskinen (vilket du oftast vill - bl.a. för att kunna ansluta med Windows-klienten).

(flyttat till rätt kategori)
Martin | Switch King

MickeMek
1 star
1 star
Posts: 9
Joined: Fri 08 Jun 2012, 06:46

Re: SwitchKing i Ubuntu problem

Post by MickeMek » Fri 08 Jun 2012, 21:39

Nu har jag suttit några timmar till..

1. Installerade om Ubuntu. Har nu Ubuntu server 10.10
2. Installerade om Mono Har nu Mono JIT compiler version 2.6.7
3. Installerade telldus-core. Har ni version 2.1.1
4. Installerade tellduscenter
5. Startar SwitchKing med följande parametrar: sudo mono /bin/SwitchKing/Bin/SwitchKing.exe terminal 192.168.100.104 8080 192.168.100.104 8800

Om jag går till webläsaren och skriver: http://user:pass@192.168.100.104:8800/devices från en annan dator i nätverket så får jag följande resultat:
Startar jag SwitchKing klienten på en annan dator i nätverket så får jag kontakt med servern, men så fort jag försöker ta bort enheter, ändra enheter eller aktivera enheterna från default-databasen så krashar servern, med följande resultat:
  • Stacktrace:


    Native stacktrace:

    mono() [0x80d4d0b]
    mono() [0x810ffeb]
    [0xec140c]

    Debug info from gdb:


    =================================================================
    Got a SIGSEGV while executing native code. This usually indicates
    a fatal error in the mono runtime or one of the native libraries
    used by your application.
    =================================================================

    Avbruten (SIGABRT)
    eller
    ERROR:shared.c:659:shm_semaphores_remove: assertion failed: (proc_count > 0)
Detta har med telldusd att göra. Försöker jag skapa en ny enhet utan att ha startat telldusd på servern får jag bara ett meddelande om att Telldus service not running.

Har du någon idé om vad som är fel?

Edited:
Har nu uppgraderat till mono-2.10.8.1, fortfarande ingen skillnad.
Jag har lyckats skapa en ny device, men varje gång man gör en förändring av devices som påverkar databasen så smäller mono.
Ändringen sparas i databasen, men man måste starta om SwitchKing server. Samma sak gäller om man tänder en device. (eftersom den skriver till devices i databasen)
Har man däremot tänt en device och försöker starta om SwitchKing server så smäller mono.
Då måste man in i databasen och sätta DeviceCurrentDeviceStateID = 0
------------------------------------------------------------------------------------

/ Micke

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: SwitchKing i Ubuntu problem

Post by Martin » Sat 09 Jun 2012, 10:30

Jag är inte riktigt säker på att det är databasskrivningarna som spökar. Första intrycket var att det kunde ha med rättigheter för telldusd att göra.
Om du gör en förändring på en enhet så kan det orsaka att enheten ska synkas med telldusd och om rättigheterna spökar då så kommer servern gissningsvis att smälla om Mono runtime inte klarar av att hantera ett fel i telldusd.

Vilka användare kör du telldusd med och Switch King med, och har du bekräftat att telldusd verkligen får skriva i Telldus konfigurationsfil?

Det skulle kunna stå något i loggarna om detta (Switch Kings) och om det inte gör det skulle man kunna slå på debug för att se det sista som görs innan det smäller.

När Mono runtime smäller har man ingen möjlighet att hämta upp det.
Martin | Switch King

MickeMek
1 star
1 star
Posts: 9
Joined: Fri 08 Jun 2012, 06:46

Re: SwitchKing i Ubuntu problem

Post by MickeMek » Sat 09 Jun 2012, 11:41

Tjena..

Jag startar ju SwitchKing med sudo. Även inloggad som root.
Startar också telldusd som root & provat även med sudo.

Finns det någon mer konfig-fil som SwitchKing vill skriva i än tellstick.conf samt databasen?

Skall tilläggas att de ändringar som jag gör när mono smäller sparas i tellstick.conf

ls /bin/SwitchKing/Bin/SwitchKing.exe -lsa ger:
16 -rwxrwxr-x 1 root root 13312 2011-12-29 22:39 SwitchKing.exe

ls /etc/tellstick.conf -lsa ger:
4 -rwxrwxrwx 1 root plugdev 605 2012-06-09 00:48 /etc/tellstick.conf


Jag kan skicka en debug-log från SwitchKing om du vill.

Tack..

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: SwitchKing i Ubuntu problem

Post by Martin » Sat 09 Jun 2012, 20:29

MickeMek wrote:Jag startar ju SwitchKing med sudo. Även inloggad som root.
Startar också telldusd som root & provat även med sudo.
Faktum är att Switch King egentligen inte behöver köras med sudo. Vanlig användare ska fungera. Samma sak med telldusd, om man konfigurerar upp rättigheterna på tellstick.conf.
MickeMek wrote:Finns det någon mer konfig-fil som SwitchKing vill skriva i än tellstick.conf samt databasen?
Switch King är inte själv och skruvar i tellstick.conf. Istället skickar Switch King en begäran till telldusd, som i sin tur läser/skriver i filen.
Utöver databas och loggfiler (under katalogen log) läser/skriver Switch King ingenstans.
MickeMek wrote:Jag kan skicka en debug-log från SwitchKing om du vill.
Ja tack.
http://www.switchking.se/sv/faq/39-konf ... ningslaege
Har själv inte kört 2.10.8, däremot 2.10.7, så det är möjligt att det hänt något i 2.10.8 (men det borde ju bli till det bättre isf).
MickeMek wrote:Då måste man in i databasen och sätta DeviceCurrentDeviceStateID = 0
Om du gör detta igen, sätt det hellre till 1 (Off) eller 2 (On). 0 används inte.
Martin | Switch King

MickeMek
1 star
1 star
Posts: 9
Joined: Fri 08 Jun 2012, 06:46

Re: SwitchKing i Ubuntu problem

Post by MickeMek » Mon 11 Jun 2012, 20:47

Har skickat lite loggar till dig per PM

/ Micke

peterpops
1 star
1 star
Posts: 8
Joined: Sun 15 Jul 2012, 06:57

Re: SwitchKing i Ubuntu problem

Post by peterpops » Sun 15 Jul 2012, 07:00

Hur gick det med detta för er?
Jag sitter på en ubuntu 12.04 server med exakt samma problem som beskrivs ovan...

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: SwitchKing i Ubuntu problem

Post by Martin » Sun 15 Jul 2012, 09:16

Vi kom aldrig riktigt i mål med detta, annat än att det kunde konstateras att problemet uppstod i samband med att man skickade själva kommandot till TelldusD.

Hade en fungering om det kunde ha att göra med om man kör 32- eller 64-bitars. Vad gäller för dig?
Martin | Switch King

peterpops
1 star
1 star
Posts: 8
Joined: Sun 15 Jul 2012, 06:57

Re: SwitchKing i Ubuntu problem

Post by peterpops » Sun 15 Jul 2012, 09:30

jag sitter på ett 32 bitars system med kernel 3.2.16

Hur jag än försöker så kraschar mono/switchking server ur, och för att sen få igång det utan att det kraschar igen så måste jag ersätta databasen med en ny kopia. Är helt ny användare av switchking så är nybörjare än så länge.

Jag upplever det som att problemet hamnar i databasen...

Post Reply

Who is online

Users browsing this forum: No registered users and 6 guests