BatchClient.UploadNodeLogsAsync Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
UploadNodeLogsAsync(String, String, UploadBatchServiceLogsContent, Nullable<Int32>, Nullable<DateTimeOffset>, CancellationToken) |
Upload Azure Batch service log files from the specified Compute Node to Azure Blob Storage. |
UploadNodeLogsAsync(String, String, RequestContent, Nullable<Int32>, Nullable<DateTimeOffset>, RequestContext) |
[Protocol Method] Upload Azure Batch service log files from the specified Compute Node to Azure Blob Storage.
|
UploadNodeLogsAsync(String, String, UploadBatchServiceLogsContent, Nullable<Int32>, Nullable<DateTimeOffset>, CancellationToken)
- Source:
- BatchClientCustom.cs
Upload Azure Batch service log files from the specified Compute Node to Azure Blob Storage.
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Compute.Batch.UploadBatchServiceLogsResult>> UploadNodeLogsAsync (string poolId, string nodeId, Azure.Compute.Batch.UploadBatchServiceLogsContent content, int? timeOutInSeconds = default, DateTimeOffset? ocpdate = default, System.Threading.CancellationToken cancellationToken = default);
abstract member UploadNodeLogsAsync : string * string * Azure.Compute.Batch.UploadBatchServiceLogsContent * Nullable<int> * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response<Azure.Compute.Batch.UploadBatchServiceLogsResult>>
override this.UploadNodeLogsAsync : string * string * Azure.Compute.Batch.UploadBatchServiceLogsContent * Nullable<int> * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response<Azure.Compute.Batch.UploadBatchServiceLogsResult>>
Public Overridable Function UploadNodeLogsAsync (poolId As String, nodeId As String, content As UploadBatchServiceLogsContent, Optional timeOutInSeconds As Nullable(Of Integer) = Nothing, Optional ocpdate As Nullable(Of DateTimeOffset) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Response(Of UploadBatchServiceLogsResult))
Parameters
- poolId
- String
The ID of the Pool that contains the Compute Node.
- nodeId
- String
The ID of the Compute Node for which you want to get the Remote Desktop Protocol file.
- content
- UploadBatchServiceLogsContent
The Azure Batch service log files upload options.
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.".
- ocpdate
- Nullable<DateTimeOffset>
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.
- cancellationToken
- CancellationToken
The cancellation token to use.
Returns
Exceptions
poolId
, nodeId
or content
is null.
poolId
or nodeId
is an empty string, and was expected to be non-empty.
Examples
This sample shows how to call UploadNodeLogsAsync.
Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);
UploadBatchServiceLogsContent content = new UploadBatchServiceLogsContent("<containerUrl>", DateTimeOffset.Parse("2022-05-10T18:57:31.2311892Z"));
Response<UploadBatchServiceLogsResult> response = await client.UploadNodeLogsAsync("<poolId>", "<nodeId>", content);
This sample shows how to call UploadNodeLogsAsync with all parameters.
Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);
UploadBatchServiceLogsContent content = new UploadBatchServiceLogsContent("<containerUrl>", DateTimeOffset.Parse("2022-05-10T18:57:31.2311892Z"))
{
EndTime = DateTimeOffset.Parse("2022-05-10T18:57:31.2311892Z"),
IdentityReference = new BatchNodeIdentityReference
{
ResourceId = "<resourceId>",
},
};
Response<UploadBatchServiceLogsResult> response = await client.UploadNodeLogsAsync("<poolId>", "<nodeId>", content, timeOutInSeconds: 1234, ocpdate: DateTimeOffset.Parse("Tue, 10 May 2022 18:57:31 GMT"));
Remarks
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.
Applies to
UploadNodeLogsAsync(String, String, RequestContent, Nullable<Int32>, Nullable<DateTimeOffset>, RequestContext)
- Source:
- BatchClientCustom.cs
[Protocol Method] Upload Azure Batch service log files from the specified Compute Node to Azure Blob Storage.
- This protocol method allows explicit creation of the request and processing of the response for advanced scenarios.
- Please try the simpler UploadNodeLogsAsync(String, String, UploadBatchServiceLogsContent, Nullable<Int32>, Nullable<DateTimeOffset>, CancellationToken) convenience overload with strongly typed models first.
public virtual System.Threading.Tasks.Task<Azure.Response> UploadNodeLogsAsync (string poolId, string nodeId, Azure.Core.RequestContent content, int? timeOutInSeconds = default, DateTimeOffset? ocpdate = default, Azure.RequestContext context = default);
abstract member UploadNodeLogsAsync : string * string * Azure.Core.RequestContent * Nullable<int> * Nullable<DateTimeOffset> * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
override this.UploadNodeLogsAsync : string * string * Azure.Core.RequestContent * Nullable<int> * Nullable<DateTimeOffset> * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function UploadNodeLogsAsync (poolId As String, nodeId As String, content As RequestContent, Optional timeOutInSeconds As Nullable(Of Integer) = Nothing, Optional ocpdate As Nullable(Of DateTimeOffset) = Nothing, Optional context As RequestContext = Nothing) As Task(Of Response)
Parameters
- poolId
- String
The ID of the Pool that contains the Compute Node.
- nodeId
- String
The ID of the Compute Node for which you want to get the Remote Desktop Protocol file.
- content
- RequestContent
The content to send as the body of the request.
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.".
- ocpdate
- Nullable<DateTimeOffset>
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.
- context
- RequestContext
The request context, which can override default behaviors of the client pipeline on a per-call basis.
Returns
The response returned from the service.
Exceptions
poolId
, nodeId
or content
is null.
poolId
or nodeId
is an empty string, and was expected to be non-empty.
Service returned a non-success status code.
Examples
This sample shows how to call UploadNodeLogsAsync and parse the result.
Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);
using RequestContent content = RequestContent.Create(new
{
containerUrl = "<containerUrl>",
startTime = "2022-05-10T18:57:31.2311892Z",
});
Response response = await client.UploadNodeLogsAsync("<poolId>", "<nodeId>", content);
JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("virtualDirectoryName").ToString());
Console.WriteLine(result.GetProperty("numberOfFilesUploaded").ToString());
This sample shows how to call UploadNodeLogsAsync with all parameters and request content and parse the result.
Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);
using RequestContent content = RequestContent.Create(new
{
containerUrl = "<containerUrl>",
startTime = "2022-05-10T18:57:31.2311892Z",
endTime = "2022-05-10T18:57:31.2311892Z",
identityReference = new
{
resourceId = "<resourceId>",
},
});
Response response = await client.UploadNodeLogsAsync("<poolId>", "<nodeId>", content, timeOutInSeconds: 1234, ocpdate: DateTimeOffset.Parse("Tue, 10 May 2022 18:57:31 GMT"));
JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("virtualDirectoryName").ToString());
Console.WriteLine(result.GetProperty("numberOfFilesUploaded").ToString());
Applies to
Azure SDK for .NET