Naplók lekérdezése

Bonsai a betanítás és az értékelés során gyűjthet esemény-, iterációs és szimulációs adatokat. A Bonsai új Bonsai-munkaterület létrehozásakor létrehoz egy Azure Log Analytics-munkaterületet, és naplóadatokat ír az Azure Log Analyticsbe, hogy lekérdezheti az adatokat az esetlegesen gyűjtött egyéb naplóadatok mellett.

Előkészületek

Tipp

Bonsai a betanítás során automatikusan naplózza az egyetlen szimulátorpéldányra és az összes szimulátorpéldányra vonatkozó részinformációkat az egyéni értékelés során. Ha nem kell felülbírálni az alapértelmezett naplózási viselkedést, ugorjon a 2. lépésre.

1. lépés: Naplózás engedélyezése több szimulátorpéldányhoz

Ha engedélyezni szeretné a naplózást több szimulátorpéldányon egy betanítási folyamatban már folyamatban van agy esetén, használja a brain version start-logging következő parancsot:

$ bonsai brain version start-logging \
  --name='HiveMind'                  \
  --managed-simulator                \
  --log-session-count=2

A betanítás több szimulátorpéldány naplózásának engedélyezésével való elkezdéshez használja a --log-session-count jelzőt a jelölővel: brain version start-training

$ bonsai brain version start-training    \
  --name='HiveMind'                      \
  --version=5                            \
  --simulator-package-name='Apiary-HVAC' \
  --instance-count=16                    \
  --log-session-count=8

A és a paranccsal kapcsolatos további részleteket a start-logging stop-logging BonsaiCLI-referenciában talál.

2. lépés: A Log Analytics-munkaterület megnyitása

  1. Jelentkezzen be az Azure Portalra.
  2. Nyissa meg a fiókjához társított Bonsai-munkaterületek listáját.
  3. Kattintson arra a munkaterületre, amelyről naplókat szeretne lekérdezni.

    Naplók munkaterület hivatkozása a Azure Portal

  4. A portál Általános szakaszában válassza a Naplók lehetőséget.

Megjegyzés

Amikor először nyitja meg a Naplók oldalt, az Azure egy csomag előtti lekérdezések teljes átfedését mutatja be. Ha nem látja ezt a panelt minden alkalommal, győződjön meg arról, hogy a panel tetején található "Minden alkalommal" feliratú csúszka ki van kapcsolva.

3. lépés: Azure-naplólekérdezés írása

A Bonsai-adatokat a következő egyéni naplók tárolják:

  • EpisodeLog_CL: Esemény szintű adatok. Egy betanítás futtatása több részbejegyzést tartalmaz.
  • IterationLog_CL: Iterációs szintű adatok. Egy-egy rész több iterációs bejegyzéssel is fog fog omni.
  • ContainerEvent_CL: Rendszerszintű adatok a szimulációhoz Azure Container Registry tárolópéldányok közötti interakciókról. Csak akkor érhető el, ha include-system-logs a jelzőt használja.
  • ContainerInstanceLog_CL: Rendszerszintű adatok a betanítás során naplózott egyes szimulátorpéldányokkal kapcsolatban. Csak akkor érhető el, ha include-system-logs a jelzőt használja.

Az egyes tábla legfontosabb Bonsai-naplóoszlopait alább olvashatja.

EpisodeLog_CL

Oszlop neve Leírás
AssessmentId_s Az esemény részét képezi az értékelés Azure-objektumazonosítója. Csak akkor állítsa be, ha naplózás történt az értékelés során.
AssessmentName_s Az értékelés egyéni neve, ahol az esemény része volt. Csak akkor állítsa be, ha naplózás történt az értékelés során.
BrainDisplayName_s A Bonsai agy kis- és nagybetűket megkülönböztető neve. A Bonsai felhasználói felületén is szerepel.
BrainName_s A Bonsai agy kis- és nagybani neve. Az agyra a Bonsai CLI-hez is hivatkozik.
BrainVersionId_g Az agy verziójának Azure-objektumazonosítója.
BrainVersion_d Az agy verziószáma egész számként.
ConceptName_s Betanított tintafogalmak.
CumulativeReward_d Az esemény végső jutalmi pontszáma.
EndTime_t Az esemény végének UTC-időbélyege.
EpisodeId_g A nyers eseményadatokat tartalmazó adatobjektum Azure-objektumazonosítója.
EpisodeType_s Azt határozza meg, hogy az esemény naplózása a betanítás vagy az értékelés során történt-e (nincs meghatározva).
FinishReason_s Jelzi, hogy miért ért véget az esemény.
GoalMetrics_s JSON-objektum iterációs szintű metrikákat a inkling objectives avoid , drive és reach . A nem használt célkitűzések üresek.
LessonIndex_d A lecke indexének növelése az adott betanítési vagy értékelési munkamenethez, 1-től kezdve.
SessionId_s A felügyelt szimulátor Azure-objektumazonosítója.
SimConfig_s JSON-objektum a kezdő sim konfigurációs információkkal ehhez az eseményhez.
SimId_s A felügyelt szimulátor tárolói IP-címe.
StartTime_t Az esemény elkezdődött UTC-időbélyege.
TenantId Az Az Azure-bérlő, amelyben a naplóbejegyzés létre lett hozva.
TimeGenerated A naplóbejegyzés utc-időbélyegzőjével.
Típus A naplóbejegyzés típusa. Mindig a "EpisodeLog_CL" beállításra.
WorkspaceId_g A Bonsai-munkaterület Azure-objektumazonosítója.

IterationLog_CL

Oszlop neve Leírás
BrainAction_s Az agy által az átalakítás után visszaadott iterációs SimState műveletek.
BrainDisplayName_s A Bonsai-agy megjelenített neve. A Bonsai felhasználói felületén szerepel.
BrainName_s A Bonsai-agy belső neve. Az agyra a Bonsai CLI-hez hivatkozik.
BrainVersionId_g Az agy verziójának Azure-objektumazonosítója.
BrainVersion_d Az agy verziója a Bonsai felhasználói felületén látható.
EpisodeId_g A nyers eseményadatokat tartalmazó adatobjektum Azure-objektumazonosítója.
EpisodeIndex_d Az egyes leckék indexének növelése 1-től kezdve.
Halted_b Jelzi, hogy a felhasználó leállította-e a kapcsolódó részt.
IterationIndex_d Az adott sorozat ismétlési indexének növelése 1-től kezdve.
ObservableState_s Az agynak az átalakítás után az iterációhoz átadott SimState állapotértékek.
Reward_d Növekményes jutalma az agyhoz rendelve az iterációhoz.
SessionId_s A felügyelt szimulátor Azure-objektumazonosítója.
SimAction_s Az agy által a szimulátornak küldött műveletértékek.
SimState_s A szimulátor által az agynak küldött állapotértékek.
TenantId Az Azure-bérlő, amelyben a Bonsai-munkaterület ki lett építve.
Terminal_b Logikai érték, amely azt jelzi, hogy az adott iteráció terminál-iteráció volt-e.
TimeGenerated A Log Analytics automatikusan beállít egy UTC-időbélyeget a naplóbejegyzés beestekor.
Timestamp_t A Naplóadatok Bonsai által létrehozott UTC-időbélyegző.
Típus A naplóbejegyzés típusa. Mindig állítsa "IterationLog_CL" beállításra.
WorkspaceId_g A Bonsai-munkaterület Azure-objektumazonosítója.

ContainerEvent_CL

Oszlop neve Leírás
ContainerGroupInstanceId_g A szimulációhoz használt ACR-tárolócsoport-példány Azure-objektumazonosítója.
ContainerGroup_s A szimulációhoz használt ACR-tárolócsoport-példány kis- és nagybetűket megkülönböztető neve.
ContainerName_s A társított szimulátorpéldányhoz tartozó ACR-tároló kis- és nagybetűket megkülönböztető neve.
Location_s A Microsoft szolgáltatási régiója, ahol a tároló üzembe lett stb.
Üzenet Naplózott üzenet az Azure Container Registryből.
OSType_s A társított tárolópéldányok operációs rendszerének típusa.
Reason_s Rendszerüzenetet aktiváló ACR-esemény.
ResourceGroup Annak az erőforráscsoportnak az Azure-objektumazonosítója, amelyhez a tárolócsoport tartozik.
SubscriptionId Az Azure-előfizetés azonosítója, amelyre a tárolócsoport futtatásának költsége fel lett számolva.
TimeGenerated A naplóbejegyzés utc-időbélyegzőjével.
Típus A naplóbejegyzés típusa. Mindig állítsa "ContainerEvent_CL" beállításra.

ContainerInstanceLog_CL

Oszlop neve Leírás
ContainerGroup_s A társított ACR-tárolócsoport példányának kis- és nagybetűket megkülönböztető neve a ContainerEvent_CL.
ContainerID_s Az ACR-tárolópéldány Azure-objektumazonosítója.
ContainerImage_s Azure Container Registry tárolópéldány nevét.
ContainerName_s A tárolópéldány rövid neve.
Location_s A Microsoft szolgáltatási régiója, ahol a példány üzembe lett stb.
Üzenet Naplózott üzenet a tárolópéldányból.
OSType_s A tárolópéldány operációs rendszerének típusa (például Linux).
ResourceGroup Annak az erőforráscsoportnak az Azure-objektumazonosítója, amelyhez a tárolópéldány tartozik.
Source_s Azt jelzi, hogy a rendszer hogyan rögzítette a naplóadatokat.
SubscriptionId Az Azure-előfizetés azonosítója, amelyre a tárolópéldány futtatásának költsége fel lett számolva.
TimeGenerated A naplóbejegyzés utc-időbélyegzőjével.
Típus A naplóbejegyzés típusa. Mindig állítsa "ContainerEvent_CL" beállításra.

Példa a lekérdezésekre

Sorolja fel az iterációs adatokban található összes egyedi munkamenet-azonosítót:

IterationLog_CL | distinct SessionId_s

Magas szintű eseményadatok csatolása a társított iterációkhoz a munkamenet-azonosító használatával:

IterationLog_CL |
join kind = leftouter (
  EpisodeLog_CL |
  project
    BrainName_s,
    CumulativeReward_d,
    SimConfig_s,
    GoalMetrics_s,
    EpisodeType_s,
    EpisodeId_g
) on EpisodeId_g |
project
  WorkspaceId = WorkspaceId_g, 
  BrainName = BrainName_s,
  BrainVersion = BrainVersion_d, 
  Timestamp = Timestamp_t, 
  SimAction = parse_json(SimAction_s),
  SimState = parse_json(SimState_s), 
  IterationIndex = IterationIndex_d, 
  EpisodeIndex = EpisodeIndex_d, 
  Reward = Reward_d, 
  CumulativeReward = CumulativeReward_d, 
  SimConfig = parse_json(SimConfig_s), 
  GoalMetrics = parse_json(EpisodeType_s), 
  EpisodeType = EpisodeType_s, 
  EpisodeId = EpisodeId_g1 |
order by
  EpisodeIndex asc,
  IterationIndex asc,
  BrainName asc

Következő lépések

A standard Azure-naplóoszlopokkal és az Azure-naplólekérdezés szintaxisával kapcsolatos további információkért tekintse meg az Azure Log Analytics dokumentációját.