Inhaltsverzeichnis
Runbook: Windows storitev
Trajanje: ~15 minut
Vloga: Windows administrator
Predpogoj: Administratorske pravice, .NET 8 Runtime
Namestitev in upravljanje Data Gateway kot Windows storitev.
Potek dela
flowchart TD
A[Začetek] --> B[Kopiranje Gateway]
B --> C[Registracija storitve]
C --> D[Konfiguracija storitve]
D --> E[Zagon storitve]
E --> F[Health Check]
F --> G{V redu?}
G -->|Da| H[Končano]
G -->|Ne| I[Preveri Event Log]
style H fill:#e8f5e9
style I fill:#ffebee
1. Namestitev Gateway
# Ustvari mapo New-Item -ItemType Directory -Path "%SERVICES_ROOT%\DataGateway" -Force # Kopiraj datoteke Copy-Item -Path ".\publish\*" -Destination "%SERVICES_ROOT%\DataGateway" -Recurse # Prilagodi konfiguracijo notepad "%SERVICES_ROOT%\DataGateway\appsettings.json"
2. Ustvarjanje storitve s sc.exe
# Izvedi kot administrator sc.exe create "DataGateway" ` binPath= "%SERVICES_ROOT%\DataGateway\WvdS.WebAPI.Data.Gateway.Api.exe" ` DisplayName= "WvdS Data Gateway" ` start= auto ` obj= "NT AUTHORITY\NETWORK SERVICE" # Nastavi opis sc.exe description "DataGateway" "REST/OData/GraphQL API Gateway za podatkovne baze"
3. Ustvarjanje storitve z NSSM (alternativa)
NSSM (Non-Sucking Service Manager) ponuja več nadzora:
# Prenesi NSSM Invoke-WebRequest -Uri "https://nssm.cc/release/nssm-2.24.zip" -OutFile "nssm.zip" Expand-Archive -Path "nssm.zip" -DestinationPath "%TOOLS_PATH%" # Namesti storitev %TOOLS_PATH%\nssm-2.24\win64\nssm.exe install DataGateway "%SERVICES_ROOT%\DataGateway\WvdS.WebAPI.Data.Gateway.Api.exe" # Konfiguracija nssm set DataGateway AppDirectory "%SERVICES_ROOT%\DataGateway" nssm set DataGateway DisplayName "WvdS Data Gateway" nssm set DataGateway Description "REST/OData/GraphQL API Gateway" nssm set DataGateway Start SERVICE_AUTO_START nssm set DataGateway AppStdout "%SERVICES_ROOT%\DataGateway\logs\stdout.log" nssm set DataGateway AppStderr "%SERVICES_ROOT%\DataGateway\logs\stderr.log" nssm set DataGateway AppRotateFiles 1 nssm set DataGateway AppRotateBytes 10485760
4. Zagon storitve
# Zaženi Start-Service -Name "DataGateway" # Preveri status Get-Service -Name "DataGateway" # Ustavi Stop-Service -Name "DataGateway" # Ponovno zaženi Restart-Service -Name "DataGateway"
5. Konfiguracija samodejnega zagona
# Samodejni zagon ob zagonu sistema Set-Service -Name "DataGateway" -StartupType Automatic # Zakasnjen zagon (po omrežju) sc.exe config "DataGateway" start= delayed-auto # Možnosti obnovitve (ponovni zagon ob sesutju) sc.exe failure "DataGateway" reset= 86400 actions= restart/60000/restart/60000/restart/60000
6. Health Check
# Počakaj da je storitev pripravljena Start-Sleep -Seconds 5 # Health Check $response = Invoke-WebRequest -Uri "http://localhost:5000/health" -UseBasicParsing if ($response.StatusCode -eq 200) { Write-Host "Gateway deluje!" -ForegroundColor Green } else { Write-Host "Težava z Gateway!" -ForegroundColor Red Get-EventLog -LogName Application -Source "DataGateway" -Newest 10 }
7. Kontrolni seznam
| # | Točka preverjanja | V |
| — | ———– | — |
| 1 | Datoteke v %SERVICES_ROOT%\DataGateway | |
| 2 | appsettings.json konfiguriran | |
| 3 | Storitev registrirana | |
| 4 | Storitev zagnana | |
| 5 | Health Check uspešen | |
| 6 | Samodejni zagon aktiven | |
| 7 | Obnovitev konfigurirana |
Odpravljanje težav
| Težava | Vzrok | Rešitev |
| ——— | ——— | ——– |
Storitev se ne zažene | Manjka .NET Runtime | Preveri dotnet –info |
Access denied | Manjkajoče pravice | Namesti kot administrator |
Vrata že v uporabi | Drug proces | netstat -ano | findstr 5000 |
Config error | JSON sintaksa | Validiraj appsettings.json |
Preverjanje Event Log:
Get-EventLog -LogName Application -Source "DataGateway" -Newest 20 | Format-Table TimeGenerated, EntryType, Message -Wrap
Odstranitev storitve
# Ustavi Stop-Service -Name "DataGateway" -Force # Odstrani sc.exe delete "DataGateway" # Izbriši datoteke (neobvezno) Remove-Item -Path "%SERVICES_ROOT%\DataGateway" -Recurse -Force
Povezani Runbooks
- Docker - Kontejnerska alternativa
- Health Check - Preverjanje razpoložljivosti
- Nastavitev TLS - Aktiviranje HTTPS
« <- Avtomatizacija | -> systemd »
Wolfgang van der Stille @ EMSR DATA d.o.o. - Data Gateway Professional
Zuletzt geändert: dne 29.01.2026 ob 23:32