Page 2 of 2 FirstFirst 12
Results 11 to 17 of 17
  1. #11
    Administrator
    Join Date
    Jul 2006
    Location
    Milan
    Posts
    1,090
    We should check the console output of the LS.bat script when launched as a service.
    I'm not sure if Windows or nssm allow you to do it in some way.
    Anyway, you can try to setup a wrapper script that runs LS.bat and redirects the output.
    For instance, create wrapper.bat beside LS.bat, which issues
    .\LS.bat run > out.txt
    and change Install_LS_as_Service-NT.bat by replacing references to LS.bat with wrapper.bat;
    then let's see the out.txt log generated.

  2. #12
    Member
    Join Date
    Aug 2010
    Location
    Rio de Janeiro
    Posts
    6
    I did as you suggested and no log was generated. If i run the wrapper.bat the log is generated, but when instaled as service no.

  3. #13
    Administrator
    Join Date
    Jul 2006
    Location
    Milan
    Posts
    1,090
    There must be some restriction with Windows services that we can't guess at the moment, or something in your deployment that is different from what we expect and that we still can't see.
    But now you can remove Lightstreamer from the equation.
    Please change wrapper.bat to issuing:
    .\NOLS.bat > out.txt
    and put NOLS.bat beside LS.bat, which just does:
    echo test
    Can you confirm that when you install the service you now see out.txt while you didn't see it in the previous attempts?

  4. #14
    Member
    Join Date
    Aug 2010
    Location
    Rio de Janeiro
    Posts
    6
    I did as you suggested and no log was generated. But this time i went futher. I tried to install the service without the Install_LS_as_Service-NT.bat. I ran "mssn.exe install Lightstreamer" and in the diolog that opened I chose my wrapper.bat then started the service manualy and the Lightstreamer started successfully.

    This is the Install_LS_as_Service-NT.bat
    @echo off
    setlocal

    rem
    rem NSSM Lightstreamer NT service install script
    rem

    if "%OS%"=="Windows_NT" goto nt
    echo This script only works with NT-based versions of Windows.
    goto :end

    :nt

    echo Attention Windows Vista and Windows 7 users, this
    echo script must be run as Administrator.
    echo Once the service is installed, do not move nssm*.exe files!
    echo ...
    echo Please check the output below
    echo ...

    rem Remove the service
    if "%PROCESSOR_ARCHITECTURE%" == "AMD64" goto amd64nssm
    goto x86nssm

    :x86nssm
    %0\..\nssm.exe install Lightstreamer %0\..\LS.bat run
    goto :startserv

    :amd64nssm
    %0\..\nssm_x64.exe install Lightstreamer %0\..\LS.bat run
    goto :startserv

    :startserv
    net start Lightstreamer

    :end
    pause

  5. #15
    Administrator
    Join Date
    Jul 2006
    Location
    Milan
    Posts
    1,090
    Thank you for finding the workaround.
    Admittedly, we can't find an explanation for this behavior at the moment, as it doesn't replicate on our machines.
    We will try to investigate and also ask for suggestions.

  6. #16
    Member
    Join Date
    Apr 2010
    Location
    San Francisco
    Posts
    16

    %0\.. is a problem

    While using "%0\.." to 'sort of' determine the path to the application, it does not work in all circumstances. For example if you open a command window, and navigate to the bin\windows directory, and run Install_LS_as_Service-NT.bat from there, the values entered into the registry for the service are incorrect as follows:

    Parameters\AppDirectory = Install_LS_as_Service-NT.bat\..
    Parameters\Application = Install_LS_as_Service-NT.bat\..\LS.bat

    obviously that won't work.

    Now if you double click Install_LS_as_Service-NT.bat from windows explorer, you'll end up with this (which does work - although I wouldn't call this a very elegant solution - having the script filename in the path):

    Parameters\AppDirectory = C:\Lightstreamer\bin\windows\Install_LS_as_Service-NT.bat\..
    Parameters\Application = C:\Lightstreamer\bin\windows\Install_LS_as_Service-NT.bat\..\LS.bat

    Seems like the Install_LS_as_Service-NT.bat scrip needs some work.

    What really needs to be in the Registry is (to be nice and clean):

    Parameters\AppDirectory = C:\Lightstreamer\bin\windows
    Parameters\Application = C:\Lightstreamer\bin\windows\LS.bat

    This can be accomplished by changing the script as follows:

    Code:
    @echo off
    setlocal
    
    rem
    rem NSSM Lightstreamer NT service install script
    rem
    
    if "%OS%"=="Windows_NT" goto nt
    echo This script only works with NT-based versions of Windows.
    goto :end
    
    :nt
    
    echo Attention Windows Vista and Windows 7 users, this
    echo script must be run as Administrator.
    echo Once the service is installed, do not move nssm*.exe files!
    echo ...
    echo Please check the output below
    echo ...
    
    rem Remove the service
    if "%PROCESSOR_ARCHITECTURE%" == "AMD64" goto amd64nssm
    goto x86nssm
    
    :x86nssm
    %~dp0\nssm.exe install Lightstreamer %~dp0%LS.bat run
    goto :startserv
    
    :amd64nssm
    %~dp0\nssm_x64.exe install Lightstreamer %~dp0%LS.bat run
    goto :startserv
    
    :startserv
    net start Lightstreamer
    
    :end
    pause
    And now will work from either the command window, or windows explorer.

  7. #17
    Administrator
    Join Date
    Jul 2006
    Location
    Milan
    Posts
    1,090
    Thank you for pointing out the subtleties of the "%0\.." form.
    Actually, we assumed that the "%~" forms might not be supported everywhere, but the assumption was probably wrong, or it is now obsolete.
    We will apply your suggestion on the next release.

 

 

Similar Threads

  1. Upgraded to LS 4 and many POST bind_session.txt
    By Adrian Parker in forum Client SDKs
    Replies: 2
    Last Post: November 21st, 2011, 04:03 PM
  2. Installing problems
    By magnum_rg in forum General
    Replies: 5
    Last Post: August 9th, 2011, 06:52 PM
  3. Replies: 3
    Last Post: June 8th, 2011, 12:42 PM
  4. How to Get all updated fields in one attempt?
    By indrajit in forum Client SDKs
    Replies: 3
    Last Post: March 3rd, 2008, 09:59 AM
  5. Installing LS on Apache?
    By rufnex in forum General
    Replies: 1
    Last Post: August 22nd, 2007, 04:38 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
All times are GMT +1. The time now is 09:55 PM.