master32

Рейтинг
111
Регистрация
09.02.2022
вижу пока у людей нет понимания, что такое ИИ и как он вас съест и это вселяет надежду на выполнение законов Карло Мария Чиполла)
форумы про рыбок и все прочие форумы это белый шум для ИИ, не более того)
сейчас препейд карты на каждом углу, комсу 10-20-30% отдай и плати где хочешь

Kaavain #:

При том, что эти долбоящеры на шахидвеликах - пешеходы. И водитель всегда виноват, кроме умысла потерпевшего. Выжигать их надо - приравнять к мопедам и в/у категории М, тогда сразу проблема уйдет. 

Участковому передали верно. Мне такой удак в дверь влетел, гайцы сразу сказали - отменяй вызов от греха, а не то можешь обрести гимор, если у этого чурки хоть царапина. 

Потом участковый и приходил, так как звонок-то 112 был. 

ТС попал на -75к получается(
вот это подарочек к новому году, сочувствуем(
Devstory :
Ситуация такая. Выполнял заказ в такси и остановился во дворе в промежуточной точке. В этот момент проносится мимо , подскальзывается и  со всей скорости врезается в машину велокурьер Яндекса. Вызывал ДПС, они отказались оформлять и сказали вызывать участкового. Никакого участкового не прислали , а лишь сказали ехать в полицию. По итогу написал заявление, полиция сказали ждите месяц будет рассматривать. Личность его не учтановили. Курьер уехал, есть лишь номер его велика. За повреждения  машины выставили ущерб мне 75 тыс. Как взыскать ущерб с курьера ? 
Это вред имуществу: велосипедист (курьер) повредил вашу машину → по общему правилу вред возмещает причинитель в полном объёме (ст. 1064 ГК РФ).
Если курьер действовал при выполнении работы и удастся показать, что он «работник/исполнитель компании», иногда можно взыскивать и с компании (ст. 1068 ГК РФ).
Главная проблема сейчас не «как взыскать», а как установить личность курьера и зафиксировать материалы проверки так, чтобы они стали доказательствами.

Шаг 1 (сделайте прямо сейчас): дожать полицию по документам
Вам нужно получить на руки 3 вещи:
    Талон-уведомление / номер КУСП по вашему заявлению.
    Письменное решение по проверке (что именно они делают: проводят проверку, отказали, передали по подведомственности и т.д.).
    Контакты исполнителя (ФИО/должность) и подразделение.

Почему это важно: без этих бумаг вы не сможете нормально обжаловать бездействие и “толкать” розыск личности.

Шаг 2: подайте в полицию короткое доп.заявление именно про установление личности
Смысл: “Личность скрылась, есть номер велосипеда/инвентарный номер, время, место, признаки курьера Яндекса — прошу установить и опросить, истребовать сведения у агрегатора/службы доставки, запросить записи камер”.

Что просить прямо текстом:
    направить запрос в сервис/службу доставки по номеру велосипеда и времени события (кто был закреплён за этим ТС/сменой);
    запросить видеозаписи: двор (домофон/ТСЖ), ближайшие магазины, подъездные камеры, городские камеры (если есть);
    опросить вас и возможных свидетелей, приобщить фото/видео/повреждения.

Шаг 3: параллельно соберите «железные» доказательства ущерба
Суду нужны документы, а не “оценили на сервисе”.
Минимум:
    фото/видео места и повреждений сразу после;
    заказ-наряд/смета/счёт, либо независимая оценка + квитанции;
    данные о том, что машина стояла (или как именно стояла): видео с регистратора/камер.

Шаг 4 (если полиция “тянет” или пишет отписку): идём через суд истребовать данные у Яндекса
Проблема: Яндекс вам сам по доброй воле данные курьера может не дать (персональные данные). Но суд может истребовать доказательства у лица, у которого они находятся (ст. 57 ГПК РФ).
Практический ход, который часто срабатывает:
    подаёте иск к ООО «Яндекс…» (как к лицу, отвечающему за действия исполнителя при выполнении задания — ст. 1068 ГК РФ),
    и в этом же иске/ходатайстве просите суд истребовать:
        кто был курьером в конкретное время/локации;
        на каком основании он работал (трудовой/ГПХ/самозанятый);
        подтверждение закрепления номера велосипеда за конкретным человеком/сменой.

Дальше по ситуации:
    если выяснится конкретный курьер → его можно привлечь как ответчика (а компанию оставить/убрать в зависимости от обстоятельств).
Куда подавать: при цене иска 75 000 руб. это обычно районный суд, потому что мировому судье имущественные споры подсудны до 50 000 руб. (ст. 23 ГПК РФ).
Госпошлина: при цене иска до 100 000 руб. — 4 000 руб. (ст. 333.19 НК РФ, действует для заявлений после 08.09.2024).
Что с “взыскать именно с курьера”
Можно и нужно — по ст. 1064 ГК РФ.
Но практически это возможно только после установления личности (через полицию/камеры/судебное истребование у сервиса).
Важные сроки
Общий срок исковой давности — 3 года (ст. 196 ГК РФ).
То есть время есть, но лучше не тянуть из-за камер и логов (они могут не храниться долго).
Что сделать вам сейчас (короткий чек-лист на ближайшие 48 часов)
    Забрать/зафиксировать КУСП и исполнителя проверки.
    Подать доп.заявление в полицию с требованиями: запрос в сервис по номеру велосипеда + запрос камер.
    Сделать/заказать независимую оценку (если ещё не сделали) и собрать платёжки/сметы.

Напишите, пожалуйста, что у вас уже есть на руках из документов: КУСП есть? какое решение/ответ выдали или пока “ждите месяц”? — и я дам следующий шаг (обжалование бездействия/как именно формулировать ходатайство в суд об истребовании данных).

Sly32 #:
Именно. Тут уже вроде писали, что достаточно добавить пару стилистических ошибок в текст. Магии тут нет никакой 0 сказки для простофиль и раскручивание на бабло
погоди, пока местные сеошнеги освоили разные окна чата)
со временем узнают, что у чатагпт есть с десяток параметров, которые влияют на стилистику без всяких дополнительных промптов)
Sly32 #:
То есть используют алгоритмы ИИ для детекции ИИ - я про это и говорю😂 Вообще-то мой вопрос был сарказмом и не требовал ответа.
пупупу, достаточно знать алгоритм детектора, чтоб обойти его, без всякого сарказма
Sly32 #:
Вот мне интересно - как работают эти детекторы ИИ? Используют ИИ для анализа?🤣 Или если тект написан грамотно - это ЛЛМ? Что он тогда скажет про Оксфордский словарь?
вычисляют вероятностную дистанцию, например вероятность встретить после слова "после", слово "слова", не нулевая)
вытащил кусок скрипта из своего мониторинга, можно запускать у себя на впс, и глянуть насколько тесно с соседями)

#!/usr/bin/env python3
import time
import shutil
import re
import sys
from collections import deque

WINDOWS = [
    ("1m", 60),
    ("5m", 5 * 60),
    ("15m", 15 * 60),
    ("60m", 60 * 60),
    ("720m", 12 * 60 * 60),
    ("1440m", 24 * 60 * 60),
]

GREEN  = "\033[32m"
YELLOW = "\033[33m"
RED    = "\033[31m"
RESET  = "\033[0m"

ANSI_RE = re.compile(r"\x1b\[[0-9;]*m")

def vis_len(s: str) -> int:
    return len(ANSI_RE.sub("", s))

def ljust_ansi(s: str, width: int) -> str:
    pad = width - vis_len(s)
    return s + (" " * pad if pad > 0 else "")

def rjust_ansi(s: str, width: int) -> str:
    pad = width - vis_len(s)
    return (" " * pad if pad > 0 else "") + s

def color(v: float) -> str:
    if v < 5.0:
        return GREEN
    if v <= 15.0:
        return YELLOW
    if v > 20.0:
        return RED
    return YELLOW  # 15..20

def read_cpu():
    with open("/proc/stat", "r", encoding="utf-8") as f:
        for line in f:
            if line.startswith("cpu "):
                return list(map(int, line.split()[1:11]))
    raise RuntimeError("cpu line not found in /proc/stat")

def steal_pct(prev, cur) -> float:
    dt = sum(cur) - sum(prev)
    if dt <= 0:
        return 0.0
    dsteal = cur[7] - prev[7]
    if dsteal < 0:
        dsteal = 0
    return (dsteal / dt) * 100.0

class Roll:
    def __init__(self, sec: int):
        self.sec = int(sec)
        self.q = deque()  # (t, v)
        self.s = 0.0
        self._mn = 0.0
        self._mx = 0.0
        self._dirty = True

    def push(self, t: float, v: float) -> None:
        self.q.append((t, v))
        self.s += v
        self._dirty = True
        cutoff = t - self.sec
        while self.q and self.q[0][0] < cutoff:
            _, x = self.q.popleft()
            self.s -= x
            self._dirty = True

    def stats(self):
        n = len(self.q)
        if n <= 0:
            return 0.0, 0.0, 0.0, 0
        avg = self.s / n
        if self._dirty:
            mn = mx = self.q[0][1]
            for _, v in self.q:
                if v < mn: mn = v
                if v > mx: mx = v
            self._mn, self._mx = mn, mx
            self._dirty = False
        return avg, self._mn, self._mx, n

def clear_screen():
    sys.stdout.write("\033[2J\033[H")
    sys.stdout.flush()

def cursor_home():
    sys.stdout.write("\033[H")

def main():
    rolls = {name: Roll(sec) for name, sec in WINDOWS}

    try:
        prev = read_cpu()
    except Exception as e:
        print(f"ERROR: cannot read /proc/stat: {e}", file=sys.stderr)
        return 2

    clear_screen()

    try:
        while True:
            time.sleep(1)
            now = time.monotonic()

            try:
                cur = read_cpu()
            except Exception as e:
                cursor_home()
                sys.stdout.write(f"ERROR: cannot read /proc/stat: {e}\n")
                sys.stdout.flush()
                return 2

            steal_now = steal_pct(prev, cur)
            prev = cur

            for r in rolls.values():
                r.push(now, steal_now)

            term_w = shutil.get_terminal_size(fallback=(100, 24)).columns
            w = max(60, term_w)

            # Column widths (stable, don’t “move”)
            # WIN | AVG | MIN | MAX | N
            c_win = 6
            c_avg = 10
            c_min = 10
            c_max = 10
            c_n   = 8
            sep = "  "

            fixed = c_win + c_avg + c_min + c_max + c_n + len(sep) * 4
            if fixed > w:
                # shrink numeric cols if terminal is narrow (keep aligned)
                shrink = fixed - w
                for name in ("avg", "min", "max"):
                    if shrink <= 0:
                        break
                    if name == "avg" and c_avg > 8:
                        d = min(shrink, c_avg - 8); c_avg -= d; shrink -= d
                    if name == "min" and c_min > 8:
                        d = min(shrink, c_min - 8); c_min -= d; shrink -= d
                    if name == "max" and c_max > 8:
                        d = min(shrink, c_max - 8); c_max -= d; shrink -= d
                if shrink > 0 and c_n > 6:
                    d = min(shrink, c_n - 6); c_n -= d; shrink -= d

            bar = "─" * min(w, 2000)

            cursor_home()

            # Header line
            now_c = color(steal_now)
            head = f"{now_c}steal_now {steal_now:6.2f}%{RESET}"
            sys.stdout.write(ljust_ansi(head, w) + "\n")
            sys.stdout.write(bar[:w] + "\n")

            # Table header
            h1 = rjust_ansi("WIN", c_win)
            h2 = rjust_ansi("AVG", c_avg)
            h3 = rjust_ansi("MIN", c_min)
            h4 = rjust_ansi("MAX", c_max)
            h5 = rjust_ansi("N",   c_n)
            sys.stdout.write(ljust_ansi(f"{h1}{sep}{h2}{sep}{h3}{sep}{h4}{sep}{h5}", w) + "\n")
            sys.stdout.write(bar[:w] + "\n")

            # Rows
            for name, _sec in WINDOWS:
                avg, mn, mx, n = rolls[name].stats()

                avg_s = f"{color(avg)}{avg:6.2f}%{RESET}"
                max_s = f"{color(mx)}{mx:6.2f}%{RESET}"

                cell_win = rjust_ansi(name, c_win)
                cell_avg = rjust_ansi(avg_s, c_avg)
                cell_min = rjust_ansi(f"{mn:6.2f}%", c_min)
                cell_max = rjust_ansi(max_s, c_max)
                cell_n   = rjust_ansi(str(n), c_n)

                row = f"{cell_win}{sep}{cell_avg}{sep}{cell_min}{sep}{cell_max}{sep}{cell_n}"
                sys.stdout.write(ljust_ansi(row, w) + "\n")

            sys.stdout.write(bar[:w] + "\n")
            sys.stdout.write(ljust_ansi("Ctrl+C to stop.", w))
            sys.stdout.flush()

    except KeyboardInterrupt:
        sys.stdout.write(RESET + "\n")
        sys.stdout.flush()
        return 0

if __name__ == "__main__":
    raise SystemExit(main())

# CPU Steal Monitor (terminal TUI, 1s sampling)

## Что это
Скрипт в реальном времени мониторит **CPU steal%** на Linux (из `/proc/stat`) и показывает:
- текущий `steal_now` (за последний 1s интервал),
- статистику по окнам: **1m, 5m, 15m, 60m, 720m (12h), 1440m (24h)**:
  - **AVG** — среднее steal% по окну (подсвечивается цветом),
  - **MIN** — минимум steal% по окну,
  - **MAX** — максимум steal% по окну (подсвечивается цветом),
  - **N** — количество накопленных 1-секундных точек в окне.

Вывод обновляется **на месте** (без прокрутки), табличка выровнена и подстраивается под ширину терминала.

## Зачем это нужно
`steal%` — это доля времени, когда CPU вашей VM/контейнера *хотел* выполняться, но гипервизор не дал CPU (oversubscription/contension на хосте).
Рост steal часто проявляется как “всё тормозит”, при этом внутри VM CPU может быть не на 100%.

Использование:
- диагностика деградаций производительности в VM (KVM/Xen/VMware и т.п.),
- проверка “шумных соседей” и перегруза хоста,
- быстрый мониторинг по SSH/tmux без внешних зависимостей.

## Как работает
1. Каждую секунду читает строку `cpu` из `/proc/stat`:cpu user nice system idle iowait irq softirq steal guest guest_nice
2. Считает `steal_now` как процент по дельтам за интервал:
- `dt = sum(cur) - sum(prev)`
- `dsteal = cur[steal] - prev[steal]`
- `steal% = (dsteal / dt) * 100`
3. Для каждого окна хранит очередь `(timestamp, value)` и сумму значений:
- AVG считается быстро: `sum / N`
- MIN/MAX пересчитываются лениво (только когда окно менялось)

## Цвета
Цвет применяется **отдельно** для AVG и MAX:
- `< 5%` — зелёный
- `515%` — жёлтый
- `> 20%` — красный
- `1520%` — жёлтый (предупреждение)

Также цветом подсвечивается `steal_now`.

> Примечание: цвета — ANSI escape codes. Работает в обычном TTY, SSH, tmux/screen.  
> В окружениях без ANSI можно увидеть “мусорные” символы — тогда запускать с `TERM` поддерживающим ANSI или убрать цвета.

## Требования
- Linux с `/proc` (т.е. обычная система/VM/контейнер)
- Python 3.8+ (на практике подходит и более ранний 3.x)
- Права: достаточно чтения `/proc/stat` (обычно доступно всем)

## Запуск
```bash
chmod +x steal_monitor.py
./steal_monitor.py




Mobiaaa #:
steal рассчитывается программно гипервизором, соответственно хостер его может занизить/поставить 0%
да, можно поставить 0, это самый честный параметр, по которому можно следить за производительностью впс рядом с соседями, если на тормозной впске 0, то надо сваливать от такого хостера
Search Google #:
так там изначально можно было регистрировать только на европейские доки. кто тебе доктор что ты спалился  на левых паспортах и адресах. Смысл теперь об этом тут писать?

так у меня и был европейский адрес компани с официальными банковскими счетами, на который ваеры приходили, и регистратор подтвердил, что можно использовать этот адрес, чем и воспользовался, причем платил по несколько лет за продление, а потом попросили на выход, без вариантов
не надо тут включать лицемерие и этодругое
Всего: 1643