Hop til hovedindhold

Metrics Server

Broadcast live enhedsdata til nærliggende enheder via Bluetooth LE.

Metrics Server: statuskort med konfigurerbart servernavn, serverkontroller, antal tilsluttede klienter og aktuelle målinger.
Angiv et brugerdefineret servernavn eller vælg blandt forudindstillinger som markedsføringsnavn, modelidentifikator eller enhedsnavn.
Aktuelt målingskort, der viser CPU-forbrug, antal kerner, enhedsnavn og en live historikgraf for forbrug.

Oversigt

Metrics Server gør din enhed til en Bluetooth Low Energy (BLE) perifer, der udsender live enhedsdata til nærliggende enheder, der kører Metrics Client. Tilsluttede klienter modtager en kontinuerlig datastrøm, herunder CPU-forbrug, aktivitet pr. kerne, enhedsidentitet og tidsstempler — alt sammen sendt én gang i sekundet via BLE notify-karakteristika.

Dette er nyttigt til at overvåge én enheds ydeevne fra en anden i realtid, uden behov for Wi-Fi-netværk eller anden infrastruktur.

Indholdsfortegnelse

Hovedsektioner

Metrics Server består af én rullende skærm med fire kort:

  • Metrics Server — status og konfiguration af servernavn
  • Serverkontroller — start/stop BLE-udsendelse
  • Tilsluttede klienter — antal tilsluttede enheder
  • Aktuelle målinger — live forhåndsvisning af de udsendte data

Metrics Server statuskort

Det øverste kort viser:

  • En driftsindikator — en farvet prik med en etiket:
    • Kører (grøn) — serveren udsender og transmitterer aktivt.
    • Stoppet (rød) — serveren udsender ikke.
  • Servernavn felt — et redigerbart tekstfelt, der bestemmer det navn, andre enheder ser under BLE-opdagelse. Se Servernavn og forudindstillinger for detaljer.
  • Status — Aktiv eller Inaktiv.
  • Bluetooth-status — den aktuelle Bluetooth-radio status (Tændt, Slukket, Uautoriseret, Ikke understøttet, Nulstiller, Ukendt).
  • Tilsluttet — antallet af klientenheder, der aktuelt abonnerer på målingsstrømmen.
  • Fejl — eventuelle fejlmeddelelser fra BLE-stakken (vises kun ved fejl).

Servernavn og forudindstillinger

Servernavnet bestemmer, hvordan denne enhed vises for Metrics Client-brugere under opdagelse. Du kan indtaste et vilkårligt navn eller bruge Forudindstillinger-dropdownen for hurtigt at vælge en af de indbyggede muligheder:

ForudindstillingEksempel
Markedsføringsnavn + modelidentifikatoriPhone 16 Pro Max (iPhone17,2)
Kun markedsføringsnavniPhone 16 Pro Max
Kun modelidentifikatoriPhone17,2
EnhedsnavnRogerio's iPhone 16ProMax

Standardindstillingen er Markedsføringsnavn (Modelidentifikator), hvis tilgængelig.

Ændring af navnet, mens serveren kører, genstarter automatisk BLE-udsendelsen, så det nye navn træder i kraft med det samme.

Serverkontroller

Serverkontrolkortet indeholder én Start server / Stop server-knap:

  • Start server (grøn) — starter BLE-udsendelse og begynder at indsamle CPU-målinger. Serveren begynder at sende data, så snart en klient abonnerer.
  • Stop server (rød) — stopper BLE-udsendelse og standser målingsindsamlingen.

En beskrivelse under knappen forklarer, at serveren udsender målinger til tilsluttede klienter via Bluetooth LE.

Tilsluttede klienter

Kortet Tilsluttede klienter viser:

  • Antallet af aktuelt tilsluttede klientenheder (fremhævet som et stort tal).
  • Når ingen klienter er tilsluttet: en pladsholder med ikon og en besked om at starte serveren og bruge Metrics Client på en anden enhed.
  • Når klienter er tilsluttet: en bekræftelsesbesked, der viser antallet (f.eks. “1 klient modtager målinger”).

Serveren sender kun data, når mindst én klient er abonneret. Når ingen klienter er tilsluttet, sættes den interne timer på pause for at spare ressourcer.

Aktuelle målinger

Kortet Aktuelle målinger viser en live forhåndsvisning af de udsendte data:

FeltBeskrivelse
CPU-forbrugDet aktuelle samlede CPU-forbrug i procent for denne enhed (f.eks. 30,0%).
Antal kernerAntallet af CPU-kerner på denne enhed (f.eks. 6).
EnhedDet brugerdefinerede enhedsnavn (f.eks. "Rogerio's iPhone 16ProMax").

Under disse felter vises en Historik for forbrug-linjegraf, der illustrerer CPU-forbruget over tid og giver et visuelt indtryk af belastningsvariationer.

Transmitterede data

Serveren udsender to BLE notify-karakteristika én gang i sekundet til alle tilsluttede klienter:

Sammenfatningskarakteristik

Indeholder følgende felter i en kompakt binær payload:

FeltTypeBeskrivelse
ServernavnString (op til 32 tegn)Det konfigurerbare navn vist i statuskortet.
EnhedsmodelString (op til 32 tegn)Enhedens markedsføringsnavn (f.eks. "iPhone 16 Pro Max").
EnhedsnavnString (op til 32 tegn)Det brugerdefinerede enhedsnavn fra iOS-indstillinger.
CPU-forbrugFloat (32-bit)Samlet CPU-forbrug i procent (0–100).
Antal kernerUInt16Antal CPU-kerner.
TidsstempelUInt64Millisekunder siden Unix-epoken.

Pr.-kerne-karakteristik

Indeholder data om CPU-forbrug pr. kerne:

FeltTypeBeskrivelse
Antal kernerUInt8Antal kerner (op til 32).
KerneforbrugFloat[]Én 32-bit float pr. kerne, der angiver den pågældende kernes forbrug i procent.
TidsstempelUInt64Millisekunder siden Unix-epoken.

Sådan bruges med Metrics Client

  1. På den enhed, du vil overvåge, åbn Værktøjer > Metrics Server og tryk på Start server.
  2. På en anden enhed, åbn Værktøjer > Metrics Client.
  3. I Opdagelse-fanen, find serveren på listen og tryk på Opret forbindelse.
  4. Klienten skifter automatisk til Målinger-fanen for at vise live data.

Tekniske detaljer

  • Serveren fungerer som en BLE-perifer ved brug af CBPeripheralManager. Den udsender en brugerdefineret GATT-tjeneste med to notify-only karakteristika (sammenfatning og pr.-kerne).
  • Data sendes én gang i sekundet, når mindst én klient er abonneret. Timeren sættes på pause, når ingen klienter er tilsluttet.
  • Alle multibyte-talværdier i payloaden er little-endian, som genereret af Swift på Apple-platforme.
  • Serveren benytter CoreBluetooth state restoration, så den kan gendanne udsendelsestilstand, hvis appen genstartes af systemet.
  • BLE-backpressure håndteres elegant — hvis sendekøen er fuld, køres opdateringer i kø og sendes, når systemet signalerer klarhed via peripheralManagerIsReady(toUpdateSubscribers:).
  • CPU-målinger samples fra den samme ToolCPUViewModel, som bruges af CPU Monitor-værktøjet, hvilket sikrer ensartede målinger.

Noter og begrænsninger

  • Dette værktøj bruger Bluetooth LE, ikke Wi-Fi-netværk. Enheder skal være inden for BLE-rækkevidde (typisk 10–30 meter indendørs).
  • Tilgængelighed af BLE, baggrundsadfærd og forbindelsesstabilitet varierer afhængigt af enhed og OS-version.
  • visionOS er Metrics Server ikke tilgængelig, da BLE-periferrollen ikke understøttes.
  • Servernavnet er begrænset til 32 tegn på grund af BLE-payloadbegrænsninger.
  • Kun CPU-relaterede målinger transmitteres i øjeblikket. Andre enhedsdata (hukommelse, termiske forhold osv.) indgår ikke i BLE-strømmen.