LINUX.ORG.RU

Помогите запустить сервис, написанный на Rust

 , ,


0

2

Добрый день!

Помогите, пожалуйста, разобраться.

В нашей организации был написан сервис на Rust-е, который работает на сервере под Linux. Этот сервис несколько лет работал нормально. Недавно при перезапуске сервера этот сервис не запустился. Мы его вроде бы запустили, в списке процессов он появился, но он все равно не функционирует.

Суть сервиса: по http-запросу этот сервис предоставляет дополнительные возможности для работы с Честным знаком. Название сервиса: arm-marking (АРМ маркировки).

Вот что выдается в логах Nginx-серврера:

error.log

2024/01/09 13:13:24 [error] 2281#0: *522 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:9090/", host: "marking-arm.corp.pskovmol.ru"
2024/01/09 13:13:25 [error] 2281#0: *522 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET /favicon.ico HTTP/1.1", upstream: "http://127.0.0.1:9090/favicon.ico", host: "marking-arm.corp.pskovmol.ru", referrer: "http://marking-arm.corp.pskovmol.ru/"
2024/01/09 13:15:23 [error] 2283#0: *551 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:9090/", host: "marking-arm.corp.pskovmol.ru"
2024/01/09 13:15:27 [error] 2283#0: *551 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:9090/", host: "marking-arm.corp.pskovmol.ru"
2024/01/09 14:42:32 [error] 2286#0: *4856 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:9090/", host: "marking-arm.corp.pskovmol.ru"
2024/01/09 14:42:32 [error] 2285#0: *4726 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:9090/", host: "marking-arm.corp.pskovmol.ru"
2024/01/09 14:42:32 [error] 2286#0: *4856 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.33.10, server: marking-arm.corp.pskovmol.ru, request: "GET /favicon.ico HTTP/1.1", upstream: "http://127.0.0.1:9090/favicon.ico", host: "marking-arm.corp.pskovmol.ru", referrer: "http://marking-arm.corp.pskovmol.ru/"
2024/01/09 14:42:39 [alert] 2286#0: *4924 open socket #21 left in connection 5
2024/01/09 14:42:39 [alert] 2286#0: aborting
2024/01/09 15:29:06 [alert] 2295#0: *2358 open socket #21 left in connection 4
2024/01/09 15:29:06 [alert] 2295#0: aborting
2024/01/09 15:29:06 [alert] 2293#0: *2357 open socket #25 left in connection 4
2024/01/09 15:29:06 [alert] 2293#0: aborting

marking-arm.host.access.log

192.168.33.10 - - [09/Jan/2024:14:58:48 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:14:58:48 +0300] "GET /favicon.png HTTP/1.1" 200 360 "http://marking-arm.corp.pskovmol.ru/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:14:58:49 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:14:58:49 +0300] "GET /favicon.png HTTP/1.1" 200 360 "http://marking-arm.corp.pskovmol.ru/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:00:48 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:00:48 +0300] "GET /favicon.png HTTP/1.1" 200 360 "http://marking-arm.corp.pskovmol.ru/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:00:52 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:00:53 +0300] "GET /favicon.png HTTP/1.1" 200 360 "http://marking-arm.corp.pskovmol.ru/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4137.1 SputnikBrowser/5.6.6290.0 (GOST) Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:23:58 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0" "-"
192.168.33.10 - - [09/Jan/2024:15:23:59 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0" "-"
192.168.33.10 - - [09/Jan/2024:15:29:40 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0" "-"
192.168.33.10 - - [09/Jan/2024:15:29:50 +0300] "GET / HTTP/1.1" 200 9111 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:29:57 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:33:32 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0" "-"
192.168.33.10 - - [09/Jan/2024:15:34:29 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "-"
192.168.33.10 - - [09/Jan/2024:15:35:04 +0300] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0" "-"

Как найти почему не работает сервис? Подскажите направление, в котором надо искать.

Исходники сервиса есть. Но они не менялись.

Раньше при работающем сервисе мы заходили в браузере на страницу «http://marking-arm.corp.pskovmol.ru/», на странице отображалась определенная информация, и мы выполняли нужные действия.

Сейчас при заходе на эту страницу она просто пустая. Из-за чего это может быть?



Последнее исправление: zelenprog (всего исправлений: 8)
Ответ на: комментарий от zelenprog

Как узнать какие процессы слушают 9090 порт?

Если всё так плохо, я бы на твоём месте нашёл линуксоеда, которому ты доверяешь, и дал ему доступ к системе. Иначе можешь встрять. Ну, если в рамках этого треда не разберёшься, по крайней мере.

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

В том то и дело, что линуксоедов нету. Те программисты, которые писали сервис теперь не работают. Я то тоже программист, но писал только на С++, C# десктопные приложения, никогда не писал под веб-технологии. Вот мне и поручили разбираться.

zelenprog
() автор топика
Ответ на: комментарий от zelenprog

Те программисты, которые писали сервис теперь не работают.

Варианта нанять их разобраться на пару часов нет? Если никто специально ничего не ломал, то стопудов проблема на 10 минут при наличии доступа.

Накрайняк, попробуй в местный раздел Job написать. Стопудов кто-нибудь подрядится.

hateyoufeel ★★★★★
()

у вас не работает сама программа, которая раньше висела на 9090 порту и принимала запросы от nginx

для начала надо её найти и учитывая, что вы тут новичок, будет непросто.

Вы сервер ребутали? Возможно если ребутнуть, то всё починится само собой.

Дальше надо поискать какие-нибудь файлы в домашнем каталоге. Вот вы как логинились, так и сделайте: ls и посмотрите, какие файлы лежат в руте. Врядли у вас там кубернетес с контейнерами и режистри.

max_lapshin ★★★★★
()
Ответ на: комментарий от hateyoufeel

запусти netstat -tunap | grep <имя твоей проги>

В этой команде в колонку «PID/Program name» не влазит полное имя программы, поэтому она не находится там через grep.

Дело в том, что на этом сервере запускается еще несколько сервисов. Все они запускаются командой «.\target\release<service_name>». И в колонке «PID/Program name» видно только начало этой строки «target\release».

:(

zelenprog
() автор топика
Ответ на: комментарий от max_lapshin

Вы сервер ребутали? Возможно если ребутнуть, то всё починится само собой.

Да, перезагружали. Раньше это помогало. Уже неделю - не помогает.

у вас не работает сама программа, которая раньше висела на 9090 порту и принимала запросы от nginx … для начала надо её найти

Программу я нашел, она там лежит сразу с исходниками. Во вложенной папке .\target\release\ лежит откомпилированный бинарник. Этот бинарник запускается скриптом либо при загрузке сервера, либо вручную.

zelenprog
() автор топика

При просмотре в браузере кода страницы в консоли выдаются вот такие ошибки:

Ресурс с «https://unpkg.com/vue@next» был заблокирован из-за несоответствия MIME-типа («text/plain») (X-Content-Type-Options: nosniff).

Uncaught ReferenceError: Vue is not defined http://marking-arm.corp.pskovmol.ru/js/app.js:76

Вот строка 76 из app.js: Vue.createApp(App).mount(‘#app’)

zelenprog
() автор топика
Ответ на: комментарий от red75prim

Loopback интерфейс в порядке? ifconfig lo что показывает?

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 160258 bytes 42771996 (40.7 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 160258 bytes 42771996 (40.7 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

zelenprog
() автор топика
Ответ на: комментарий от zelenprog

Найди где в коде этот урл (https://unpkg.com/vue@next) и замени его - на какой-то из этих

https://unpkg.com/vue@latest

https://unpkg.com/vue@3.4.7

https://unpkg.com/vue@(другая_версия)

Я не знаю что такое vue, что у него с обратной совместимостью итд. Если подойдёт брать последнюю версию вслепую то первый урл, если надо зафиксировать ту что последняя сейчас (и он тайком её не обновил потом и опять всё не сломал) то второй, а если и 3.4.7 не подходит то надо выяснить какая нужна и вписать.

firkax ★★★★★
()
Ответ на: комментарий от mergood

Это явно сложнее чем заменить несколько букв, не стоит напрягать автора для которого это всё непрофильное. А если скаивать то уже не только vue а всё что там подгружается - это чуть дольше.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)