Microsoft AZ-104 Exam Dumps, Practice Test Questions

100% Latest & Updated Microsoft AZ-104 Practice Test Questions, Exam Dumps & Verified Answers!
30 Days Free Updates, Instant Download!

Microsoft AZ-104 Premium Bundle
$79.97
$59.98

AZ-104 Premium Bundle

  • Premium File: 606 Questions & Answers. Last update: Nov 5, 2026
  • Training Course: 132 Video Lectures
  • Study Guide: 458 Pages
  • Latest Questions
  • 100% Accurate Answers
  • Fast Exam Updates

AZ-104 Premium Bundle

Microsoft AZ-104 Premium Bundle
  • Premium File: 606 Questions & Answers. Last update: Nov 5, 2026
  • Training Course: 132 Video Lectures
  • Study Guide: 458 Pages
  • Latest Questions
  • 100% Accurate Answers
  • Fast Exam Updates
$79.97
$59.98

Microsoft AZ-104 Practice Test 81

Question 800

A Log Analytics query returns one row per failure event with Computer, TimeGenerated, EventID, Result, TenantId and SourceSystem. A handoff report must retain every event row and all columns except TenantId and SourceSystem. Which KQL operator best performs this selective column removal?

  1. Use project TenantId, SourceSystem so the named fields are hidden
  2. Use summarize count() by Computer to suppress the two columns
  3. Use extend TenantId = "", SourceSystem = "" to remove their schema fields
  4. Use project-away TenantId, SourceSystem after the filtering step

Explanation

Correct Answer

D:

Project-away excludes the named columns while retaining the other input columns and row count. Applied after any required filtering, it keeps Computer, TimeGenerated, EventID and Result intact while hiding TenantId and SourceSystem in the report output.

Incorrect Answers

A:

The project operator selects only the named columns, so naming TenantId and SourceSystem would display exactly the fields the report must exclude. It would also omit needed event details such as EventID and TimeGenerated.

B:

Summarize aggregates events into groups and changes row cardinality, violating the requirement to preserve one event row per original record. Aggregation is unnecessary for a column-level projection.

C:

Extend adds or overwrites column expressions but keeps those fields present in the result, even if their values are blank. It does not remove their schema fields and may mislead consumers into thinking the original columns were never collected.

Question 801

An Azure Log Analytics table contains each failed deployment operation as a separate row. Incident response needs the three most common ErrorCode values during the last 24 hours, including their counts. Which KQL sequence fits?

  1. Only project ErrorCode, which removes all duplicates
  2. Only take 3 before grouping the log events
  3. Use distinct ErrorCode values and take the first three in lexical order
  4. Filter the last day, summarize count() by ErrorCode, then top 3 by count descending

Explanation

Correct Answer

D:

Filtering the time window, grouping by ErrorCode with summarize, and ranking the resulting counts yields the requested top-three frequent failures.

Incorrect Answers

A:

Project selects columns but does not count events or identify most frequent values.

B:

Take 3 on raw rows is arbitrary sampling and cannot determine which code occurred most frequently across all matching records.

C:

Distinct removes duplicates but does not compute occurrence frequency, so the resulting three codes need not be the most common failures.

Question 802

A Log Analytics query already returns TimeGenerated, Computer, and DurationMs. An analyst needs an additional DurationSec column calculated from DurationMs while retaining all existing fields for correlation. Which KQL operator should be used?

  1. Use project-away DurationMs and rename the result as DurationSec
  2. Summarize total DurationMs by Computer and call the result DurationSec
  3. Use project DurationSec = DurationMs / 1000.0 and omit the original columns
  4. extend DurationSec = DurationMs / 1000.0

Explanation

Correct Answer

D:

Extend evaluates a new expression for each input row while preserving existing columns. Converting milliseconds to seconds this way keeps the event-level correlation fields available.

Incorrect Answers

A:

Removing or selecting columns cannot compute seconds from milliseconds. The analyst must introduce a calculated column without dropping existing columns.

B:

Aggregation groups rows and alters the returned schema rather than preserving all original events and creating a per-row converted duration.

C:

Project can calculate the requested value but without enumerating the other columns it drops them. The requirement explicitly retains all existing fields.

Question 803

A Log Analytics query returns security events from ten hosts. Analysts need an output that shows only Computer and TimeGenerated for every qualifying row, without grouping or aggregation. Which KQL operator directly selects those columns?

  1. Use project Computer, TimeGenerated after applying the record filter
  2. Use summarize count() by Computer
  3. Use distinct Computer only
  4. Use order by TimeGenerated without a projection

Explanation

Correct Answer

A:

The KQL project operator selects named output columns while preserving qualifying rows, unlike summarize which reduces rows into groups.

Incorrect Answers

B:

Summarize collapses multiple event rows per host into an aggregate, losing the individual timestamps the analysts require.

C:

Distinct would return unique host names and discard the per-event timestamp rows needed for chronology.

D:

Ordering changes sequence but retains all original columns and does not produce the specified two-field output.

Question 804

A Log Analytics table records many status rows per VM with a TimeGenerated timestamp. Analysts need exactly the most recent row from each VM, including its most recent status column, without separately joining a maximum timestamp back to the table. Which KQL aggregation fits?

  1. Use sort by Computer then take 1 on the whole table
  2. Use summarize arg_max(TimeGenerated, *) by Computer
  3. Use summarize count() by Computer
  4. Use distinct Computer

Explanation

Correct Answer

B:

The arg_max aggregation returns the row containing the maximum timestamp per group, preserving other selected columns from that latest row rather than just a count.

Incorrect Answers

A:

A global take 1 returns one row total, not the latest event for every VM.

C:

A count gives frequency of status records but loses the values of the newest status event for each VM.

D:

Distinct emits one host identifier per computer but does not retain the last status row or its timestamp and fields.

Question 805

A Kusto query counts all HTTP responses by Application, but the dashboard also needs a separate count of only 5xx server failures in the same grouped result. Which aggregation is most direct?

  1. Add extend IsServerError = StatusCode >= 500 and StatusCode < 600 but do not aggregate that flag within the Application groups
  2. Apply where StatusCode between (500 .. 599) before summarize count() by Application and assume the resulting count still includes all response status codes
  3. Use countif(StatusCode >= 500 and StatusCode < 600) with summarize by Application
  4. Add a second summarize count() by Application without filtering the aggregation for status-code range

Explanation

Correct Answer

C:

KQL countif conditionally counts matching rows within each aggregation group while count() can provide the total in parallel. This produces both metrics without duplicating queries.

Incorrect Answers

A:

The extend operator creates a per-row Boolean flag; by itself it does not produce a count of matching rows alongside the total. Use countif(IsServerError) or an equivalent conditional aggregation within summarize by Application.

B:

Filtering to 5xx before summarize removes non-error rows from the input, so a count of all responses can no longer be produced from that filtered group. Use countif on the 5xx condition alongside total count() in the same summarize.

D:

Counting every response a second time doesn't isolate HTTP 500–599 server failures. countif(StatusCode >= 500 and StatusCode < 600) within the summarize produces the separate grouped 5xx count.

Question 806

A Log Analytics custom table stores a JSON-formatted string in Payload containing a nested response.status value. Analysts want to filter events where status is failed without matching substrings in unrelated text. What KQL operation is designed to parse the structured payload first?

  1. Apply summarize count() before extracting the JSON properties
  2. Use a plain string contains search on the whole JSON text for failed and assume structure is irrelevant
  3. Use project Payload to select the JSON text column but never parse its nested fields
  4. Apply parse_json to Payload and then access the nested status property for a typed filter

Explanation

Correct Answer

D:

parse_json converts a JSON-formatted string into a dynamic object whose nested fields can be accessed in a Kusto query. This permits a field-specific predicate rather than a textual guess.

Incorrect Answers

A:

Aggregating rows first can discard the individual Payload fields needed to parse and filter each event.

B:

A substring match might find the same word in a different JSON property. It does not reliably enforce the nested response.status condition.

C:

Projecting the original string only selects a column and does not provide the nested status property for a typed predicate.

Question 807

A team has created an Azure Monitor metric alert rule for sustained VM CPU greater than 85 percent. The rule evaluates successfully, but the on-call staff still receive no email notification because no notification recipient has been configured. Which object supplies the reusable email delivery action?

  1. An Azure Monitor action group with the email receiver
  2. Edit only the metric alert’s CPU condition and leave its action list empty
  3. Create an alert processing rule with suppression enabled for the CPU alerts
  4. Pin the CPU metric to an Azure dashboard for the operators to inspect manually

Explanation

Correct Answer

A:

An action group defines notification receivers such as email and optional response actions. Associating it with the metric alert rule lets a fired alert notify the on-call staff through the configured receiver.

Incorrect Answers

B:

A corrected condition changes when an alert fires, but a firing alert without an associated notification recipient still does not email the on-call team.

C:

Suppressing notifications would move the system further from the stated email requirement, while leaving the missing receiver unconfigured.

D:

A dashboard supports manual observation but does not send on-call email when a rule fires. The delivery channel must be defined as an alert action.

Question 808

A cloud service has steady CPU usage around 30 percent, but some periodic jobs raise it temporarily. Operations wants a metric alert to fire only if average CPU usage exceeds 85 percent during the evaluation window. Which metric alert condition is appropriate?

  1. Average CPU percentage greater than 85 percent over the selected period
  2. CPU greater than 85 percent for any single sample with no averaging window
  3. CPU greater than 85 percent based on the Maximum aggregation during the window
  4. An Azure Monitor log query alert based only on VM restart events

Explanation

Correct Answer

A:

An Azure Monitor metric alert can use a static threshold with the Average aggregation for CPU percentage and an evaluation period. It measures sustained load rather than each brief sample spike.

Incorrect Answers

B:

A single high sample can reflect a brief periodic job. It does not prove the sustained average threshold that the team wants to detect.

C:

Maximum highlights the highest sample in a window; a short spike could trigger the alert even when average use is well below 85 percent.

D:

Restart events concern VM lifecycle, not sustained processor utilization. The query would miss the required high-average-CPU periods.

Question 809

A regional app is monitored by an Azure Monitor metric alert. A PagerDuty-style integration expects an HTTPS POST with the alert payload when the alert fires. The operator must avoid writing a polling VM job. Which action-group receiver is most appropriate?

  1. A webhook or secure webhook receiver to the integration endpoint, with appropriate authentication
  2. An email receiver with no forwarding or integration bridge
  3. Select a Logic Apps action-group receiver without deploying a workflow that sends the required HTTPS POST to the external incident endpoint
  4. Configure an Event Hubs action-group receiver and assume it itself sends HTTPS POST requests to the external incident URL

Explanation

Correct Answer

A:

Azure Monitor action groups can invoke webhook endpoints on alert events, passing a payload to a supported integration. Secure webhook configuration can supply appropriate Microsoft Entra authorization when required.

Incorrect Answers

B:

Email is a notification channel but does not directly make the specified HTTPS POST to the integration endpoint without another bridge.

C:

A Logic Apps action receiver can invoke an existing integration workflow; it is not by itself an arbitrary HTTPS POST mapping to an external service. Without a configured workflow that forwards the alert payload, the integration requirement is unmet. A webhook or secure webhook action provides the direct HTTP POST receiver specified by the scenario.

D:

An Event Hubs receiver delivers alert payloads to an event hub for downstream processing, not directly to an arbitrary HTTPS endpoint. Without an added consumer or forwarding integration, it cannot perform the required incident-service POST. A webhook or secure webhook receiver provides that direct delivery.

Question 810

A VM CPU metric spikes for one minute during normal deployments. The paging rule should fire only when utilization remains high across a longer sustained interval. Which Azure Monitor metric-alert evaluation settings should be tuned?

  1. Add a VMName dimension filter and assume filtering extends the alert's metric evaluation window.
  2. Increase the CPU threshold alone and assume a higher threshold expresses the minimum duration for an alert.
  3. The aggregation type and evaluation/window period used by the metric alert condition
  4. Set a shorter alert evaluation frequency without changing the aggregation or lookback window, expecting brief spikes to be suppressed.

Explanation

Correct Answer

C:

Metric alerts can aggregate samples over a configured window and evaluate periodically. Choosing the correct aggregation and duration avoids treating a brief spike as a sustained capacity issue.

Incorrect Answers

A:

A dimension filter selects a metric time series, but does not lengthen the lookback or require sustained CPU elevation. Configure the appropriate aggregation and evaluation window for the CPU condition.

B:

A threshold changes the measured level that must be exceeded, not the length of time the condition must persist. A momentary spike might still cross a higher threshold. Tune aggregation/window settings to capture sustained high usage.

D:

More frequent evaluation checks the same condition more often and does not by itself filter one-minute spikes. Use a suitable longer window and aggregation strategy rather than confusing polling frequency with sustained-duration evaluation.

Microsoft Azure Administrator (AZ-104) Practice Tests

UP

SPECIAL OFFER: GET 10% OFF

This is ONE TIME OFFER

ExamSnap Discount Offer
Enter Your Email Address to Receive Your 10% Off Discount Code

A confirmation link will be sent to this email address to verify your login. *We value your privacy. We will not rent or sell your email address.

Download Free Demo of VCE Exam Simulator

Experience Avanset VCE Exam Simulator for yourself.

Simply submit your e-mail address below to get started with our interactive software demo of your free trial.

Free Demo Limits: In the demo version you will be able to access only first 5 questions from exam.