Nodes - Upload Node Logs
Upload Azure Batch service log files from the specified Compute Node to Azure
Blob Storage.
This is for gathering Azure Batch service log files in an automated fashion
from Compute Nodes if you are experiencing an error and wish to escalate to
Azure support. The Azure Batch service log files should be shared with Azure
support to aid in debugging issues with the Batch service.
POST {endpoint}/pools/{poolId}/nodes/{nodeId}/uploadbatchservicelogs?api-version=2025-06-01
POST {endpoint}/pools/{poolId}/nodes/{nodeId}/uploadbatchservicelogs?api-version=2025-06-01&timeOut={timeOut}
URI Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (uri) |
Batch account endpoint (for example: https://batchaccount.eastus2.batch.azure.com). |
|
node
|
path | True |
string |
The ID of the Compute Node for which you want to get the Remote Desktop Protocol file. |
|
pool
|
path | True |
string |
The ID of the Pool that contains the Compute Node. |
|
api-version
|
query | True |
string minLength: 1 |
The API version to use for this operation. |
|
time
|
query |
integer (int32) |
The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be used instead.". |
Request Header
Media Types: "application/json; odata=minimalmetadata"
| Name | Required | Type | Description |
|---|---|---|---|
| client-request-id |
string |
The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. |
|
| return-client-request-id |
boolean |
Whether the server should return the client-request-id in the response. |
|
| ocp-date |
string (date-time-rfc7231) |
The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly. |
Request Body
Media Types: "application/json; odata=minimalmetadata"
| Name | Required | Type | Description |
|---|---|---|---|
| containerUrl | True |
string (uri) |
The URL of the container within Azure Blob Storage to which to upload the Batch Service log file(s). If a user assigned managed identity is not being used, the URL must include a Shared Access Signature (SAS) granting write permissions to the container. The SAS duration must allow enough time for the upload to finish. The start time for SAS is optional and recommended to not be specified. |
| startTime | True |
string (date-time) |
The start of the time range from which to upload Batch Service log file(s). Any log file containing a log message in the time range will be uploaded. This means that the operation might retrieve more logs than have been requested since the entire log file is always uploaded, but the operation should not retrieve fewer logs than have been requested. |
| endTime |
string (date-time) |
The end of the time range from which to upload Batch Service log file(s). Any log file containing a log message in the time range will be uploaded. This means that the operation might retrieve more logs than have been requested since the entire log file is always uploaded, but the operation should not retrieve fewer logs than have been requested. If omitted, the default is to upload all logs available after the startTime. |
|
| identityReference |
The reference to the user assigned identity to use to access Azure Blob Storage specified by containerUrl. The identity must have write access to the Azure Blob Storage container. |
Responses
| Name | Type | Description |
|---|---|---|
| 200 OK |
The request has succeeded. Headers
|
|
| Other Status Codes |
An unexpected error response. |
Security
OAuth2Auth
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize
Scopes
| Name | Description |
|---|---|
| https://batch.core.windows.net//.default |
Examples
Upload BatchService Logs
Sample request
POST {endpoint}/pools/poolId/nodes/tvm-1695681911_1-20161121t182739z/uploadbatchservicelogs?api-version=2025-06-01
{
"containerUrl": "https://somestorageacct.blob.core.windows.net/batch-compute-node-logs?se=2025-12-09T18%3A51%3A00Z&sp=w&sv=2025-05-31&sr=c&sig",
"startTime": "2025-11-27T00:00:00Z"
}
Sample response
{
"virtualDirectoryName": "poolId/tvm-1695681911-1-20161121t182739z/0795539d-82fe-48e3-bbff-2964905b6de0",
"numberOfFilesUploaded": 8
}
Definitions
| Name | Description |
|---|---|
|
Batch |
An error response received from the Azure Batch service. |
|
Batch |
An item of additional information included in an Azure Batch error response. |
|
Batch |
An error message received in an Azure Batch error response. |
|
Batch |
The reference to a user assigned identity associated with the Batch pool which a compute node will use. |
|
Upload |
The Azure Batch service log files upload parameters for a Compute Node. |
|
Upload |
The result of uploading Batch service log files from a specific Compute Node. |
BatchError
An error response received from the Azure Batch service.
| Name | Type | Description |
|---|---|---|
| code |
string |
An identifier for the error. Codes are invariant and are intended to be consumed programmatically. |
| message |
A message describing the error, intended to be suitable for display in a user interface. |
|
| values |
A collection of key-value pairs containing additional details about the error. |
BatchErrorDetail
An item of additional information included in an Azure Batch error response.
| Name | Type | Description |
|---|---|---|
| key |
string |
An identifier specifying the meaning of the Value property. |
| value |
string |
The additional information included with the error response. |
BatchErrorMessage
An error message received in an Azure Batch error response.
| Name | Type | Description |
|---|---|---|
| lang |
string |
The language code of the error message. |
| value |
string |
The text of the message. |
BatchNodeIdentityReference
The reference to a user assigned identity associated with the Batch pool which a compute node will use.
| Name | Type | Description |
|---|---|---|
| resourceId |
string (arm-id) |
The ARM resource id of the user assigned identity. |
UploadBatchServiceLogsOptions
The Azure Batch service log files upload parameters for a Compute Node.
| Name | Type | Description |
|---|---|---|
| containerUrl |
string (uri) |
The URL of the container within Azure Blob Storage to which to upload the Batch Service log file(s). If a user assigned managed identity is not being used, the URL must include a Shared Access Signature (SAS) granting write permissions to the container. The SAS duration must allow enough time for the upload to finish. The start time for SAS is optional and recommended to not be specified. |
| endTime |
string (date-time) |
The end of the time range from which to upload Batch Service log file(s). Any log file containing a log message in the time range will be uploaded. This means that the operation might retrieve more logs than have been requested since the entire log file is always uploaded, but the operation should not retrieve fewer logs than have been requested. If omitted, the default is to upload all logs available after the startTime. |
| identityReference |
The reference to the user assigned identity to use to access Azure Blob Storage specified by containerUrl. The identity must have write access to the Azure Blob Storage container. |
|
| startTime |
string (date-time) |
The start of the time range from which to upload Batch Service log file(s). Any log file containing a log message in the time range will be uploaded. This means that the operation might retrieve more logs than have been requested since the entire log file is always uploaded, but the operation should not retrieve fewer logs than have been requested. |
UploadBatchServiceLogsResult
The result of uploading Batch service log files from a specific Compute Node.
| Name | Type | Description |
|---|---|---|
| numberOfFilesUploaded |
integer (int32) |
The number of log files which will be uploaded. |
| virtualDirectoryName |
string |
The virtual directory within Azure Blob Storage container to which the Batch Service log file(s) will be uploaded. The virtual directory name is part of the blob name for each log file uploaded, and it is built based poolId, nodeId and a unique identifier. |