Udostępnij za pośrednictwem


Przykłady zapytań OData w interfejsie API rozwiązania Cloud for Sustainability (wersja zapoznawcza)

             Bezpłatna wersja próbna

Ważne

Niektóre lub wszystkie te funkcje są dostępne w wersji zapoznawczej. Zawartość i funkcjonalność mogą ulec zmianie.

Open Data Protocol (OData) jest protokołem dostępu do danych zbudowanym na podstawowych protokołach, takich jak HTTP. Wykorzystuje powszechnie akceptowane metodologie, takie jak REST dla sieci. Do korzystania z usług OData można używać różnych bibliotek i narzędzi.

Aby pomóc ci w tworzeniu własnych implementacji opartych na Microsoft Cloud for Sustainability API, możesz zapoznać się z niektórymi z tych często wymaganych przykładowych zapytań.

Zmodyfikuj próbki zapytań, aby działały na docelowych środowiskach:

  • {serviceRoot} : https://api.mcfs.microsoft.com/api/v1.0/instances/{instanceId}

  • {instanceId} : identyfikator GUID środowiska Cloud for Sustainability, o który chcesz zapytań, np. 20aec369-f1c8-4814-a89d-4d449dd7e8a1.

  • {serviceRootM365} : {serviceRoot}/m365

  • {serviceRootAzure} : {serviceRoot}/enrollments/{enrollmentId}

  • {enrollmentId} : Identyfikator rejestracji, znany również jako identyfikator konta rozliczeniowego. Przykład: 12345678.

  • {tenantId} : Identyfikator dzierżawy usługi Microsoft 365.

Uwaga

Niektóre zapytania interfejsu API będą zawierać wiele wyników i będą dzielone na wiele stron. API zwraca maksymalnie 1000 wyników na stronę. Jeśli dostępne są kolejne wyniki, interfejs API zwraca właściwość an @odata.nextLink zawierającą adres URL na następnej stronie wyników.

Encja EnrollmentEmission (dla emisji Azure)

Reprezentuje dane dotyczące emisji dla konta rozliczeniowego, zwanego także rejestracją.

Właściwości Type Uwagi
dateKey int32 Data w formacie rrrrmmdd; dd jest zawsze 01.
enrollmentId ciąg Znany również jako identyfikator konta rozliczeniowego.
orgName ciąg To samo co Nazwa przetwarzania transakcyjnego lub Najwyższa nazwa nadrzędna.
subscriptionId ciąg Identyfikator subskrypcji.
subscriptionName ciąg Nazwa subskrypcji.
azureServiceName string Nazwa usługi Azure, na przykład Usługa aplikacji
subService string Na przykład Magazyn Azure lub Obliczenia Azure.
azureRegionName ciąg Obszar Platformy Azure, w którym usługa jest wdrażana.
zakres ciąg Ograniczenie zakresu, na przykład 1, zakres 2 lub zakres 3.
scopeId int32 Identyfikator zakresu.
totalEmissions podwójne Łączny koszt emisji rekordu (Mt ekwiwalentu CO2).

Przykładowe zapytania dotyczące encji EnrollmentEmission (dla emisji Azure)

Typ zapytania Przykład
Emisje według rejestracji {serviceRootAzure}/emisje
Wybierz określone pola {serviceRootAzure}/emissions?$select=enrollmentId,totalEmissions,scopeId
Uwzględnij liczbę {serviceRootAzure}/emissions?$count=true
Ogranicz liczbę wyników {serviceRootAzure}/emissions?$top=100
Stronicowanie {serviceRootAzure}/emissions?$skip=100&$top=50
Filtruj według zakresu {serviceRootAzure}/emissions?$filter=ScopeId eq 1
Filtruj i agreguj {serviceRootAzure}/emissions?$apply=filter(ScopeId eq 1)/aggregate($count as Count, totalEmissions with average as Average, totalEmissions with sum as Sum)
Filtruj i grupuj {serviceRootAzure}/emissions?$apply=filter(totalEmissions gt 0.05)/groupby((ScopeId), aggregate($count as Count))`

Encja Microsoft365Emission (dla emisji Microsoft 365)

Reprezentuje emisje z centrum danych Microsoft 365 związane z następującymi aplikacjami:

  • Exchange Online
  • SharePoint
  • OneDrive
  • Microsoft Teams
  • Program Word
  • Excel
  • PowerPoint
  • Outlook
Właściwości Type Uwagi
dateKey int32 Data w formacie rrrrmmdd; dd jest zawsze 01.
tenantId ciąg Identyfikator dzierżawcy.
tenantName ciąg Nazwa dzierżawcy.
officeRegionName ciąg Regiony centrów danych Microsoft 365.
zakres ciąg Ograniczenie zakresu, na przykład 1, zakres 2 lub zakres 3.
totalEmissions podwójne Łączny koszt emisji rekordu (Mt ekwiwalentu CO2).

Przykładowe zapytania dotyczące encji Microsoft365Emission (dla emisji Microsoft 365)

Typ zapytania Przykład
Emisje dla dzierżawy {serviceRootM365}/tenantemissions
Wybierz określone pola {serviceRootM365}/emissions?$select=tenantId,totalEmissions,scope
Uwzględnij liczbę {serviceRootM365}/tenantemissions?$count=true
Ogranicz liczbę wyników {serviceRootM365}/tenantemissions?$top=100
Stronicowanie {serviceRootM365}/tenantemissions?$skip=100&$top=50
Filtruj według zakresu {serviceRootM365}/tenantemissions?$filter=Scope eq 'FILLMEIN'
Filtruj i agreguj {serviceRootserviceRootM365Azure}/tenantemissions?$apply=filter(scope eq 'FILLMEIN')/aggregate($count as Count, totalEmissions with average as Average, totalEmissions with sum as Sum)
Filtruj i grupuj {serviceRootM365}/tenantemissions?$apply=filter(totalEmissions gt 0.05)/groupby((Scope), aggregate($count as Count))`

Encja EnrollmentUsage (dla emisji Azure)

Reprezentuje obliczany współczynnik użycia zasobów w chmurze firmy Microsoft.

Właściwości Type Uwagi
dateKey int32 Data w formacie rrrrmmdd; dd jest zawsze 01.
enrollmentId ciąg Znany również jako identyfikator konta rozliczeniowego.
orgName ciąg To samo co nazwa przetwarzania transakcyjnego lub Najwyższa nazwa nadrzędna.
subscriptionId ciąg Identyfikator subskrypcji.
subscriptionName ciąg Nazwa subskrypcji.
subService ciąg Na przykład Magazyn Azure lub Obliczenia Azure.
azureRegionName ciąg Obszar Platformy Azure, w którym usługa jest wdrażana.
użycie podwójne Łączne użycie rekordu. Nie ma jednostki, ponieważ reprezentuje ona normalizowane użycie usługi w określonym regionie.

Aby uzyskać informacje na temat metody obliczania stosowanej przez firmę Microsoft, przejdź do metody Microsoft Cloud for Sustainability obliczania interfejsów API.

Przykładowe zapytania dotyczące encji EnrollmentUsage

Typ zapytania Przykład Uwaga
Wszystkie dane dotyczące użytkowania {serviceRootAzure}/użycie
Łączna liczba użycia według miesiąca na subskrypcję {serviceRootAzure}/usage?$apply=groupby((SubscriptionName,DateKey),aggregate(usage with sum as TotalUsage))&$orderby=SubscriptionName,DateKey

Encja EnrollmentProjection(dla emisji Azure)

Reprezentuje przewidywane emisje na pozostałą część roku kalendarzowego, w oparciu o średnią kroczącą z poprzednich pięciu miesięcy. Przeznaczone dla wizualizacji rocznej.

Właściwości Type Uwagi
dateKey int32 Data w formacie rrrrmmdd; dd jest zawsze 01.
enrollmentId ciąg Znany również jako identyfikator konta rozliczeniowego.
actualEmissions podwójne Dotyczy to tylko dat z przeszłości (Mt ekwiwalentu CO2).
projectedEmissions podwójne W zależności od średniej kroczącej z poprzednich pięciu miesięcy lub mniejszej w zależności od rzeczywistych danych dostępnych dla bieżącego roku (Mt ekwiwalentu CO2).
actualUsage podwójne Dotyczy to tylko dat z przeszłości.
projectedUsage podwójne W zależności od średniej kroczącej z poprzednich pięciu miesięcy lub mniejszej w zależności od rzeczywistych danych dostępnych dla bieżącego roku.

Przykładowe zapytania dotyczące encji EnrollmentProjection (dla emisji Azure)

Typ zapytania Przykład Uwaga
Prognozy z przeszłości 7-2022 {serviceRootAzure}/projections?$filter=dateKey gt 20220701
Wszystkie projekcje przez rok {serviceRootAzure}/projekcje

Ważne

Interfejs Microsoft Cloud for Sustainability API jest obecnie dostępny w wersji zapoznawczej i może się zmienić. Historyczne dane dotyczące emisji mogą również zostać zaktualizowane, gdy firma Microsoft udoskonali dokładność i kompletność danych.

Często zadawane pytania

W jaki sposób firma Microsoft oblicza obciążenie i użycie?

Aby uzyskać informacje na temat metody obliczania stosowanej przez firmę Microsoft, przejdź do metody Microsoft Cloud for Sustainability obliczania interfejsów API.

Co to jest Rownum?

Interfejs API używa numerowania rownum w celu zapewnienia spójności stronicowania. Wartość może ulec zmianie, dlatego w aplikacji nie powinna być zależność od tej wartości.

Co to jest identyfikator rejestracji?

Identyfikator rejestracji odnosi się do identyfikatora konta rozliczeniowego. W portalu Azure możesz znaleźć identyfikator, identyfikator rozliczeń i identyfikator konta rozliczeniowego.

Jak uzyskać token autoryzacji dla mojego środowiska docelowego?

Interfejs API wymaga tokenu autoryzacji OAuth. Zalecamy korzystanie z biblioteki uwierzytelniania Microsoft (MSAL).

API zwraca właściwość @odata.nextLink, jeśli jest więcej wyników niż zwróconych w bieżącej odpowiedzi. Twoja aplikacja powinna wykonać kolejny GET na tym nextLink, aby uzyskać następną stronę wyników. Ostatnia strona nie zawiera łącza nextLink. Zapoznaj się z próbką kodu, aby uzyskać więcej szczegółów na temat paginacji w bibliotece klienckiej OData.