/// <summary>
        /// Deletes a log and all its log entries.
        /// The log will reappear if it receives new entries.
        /// </summary>
        /// <param name="log_name">
        /// Required. The resource name of the log to delete.  Example:
        /// `"projects/my-project/logs/syslog"`.
        /// </param>
        /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
        /// <returns>The RPC response.</returns>
        public override void DeleteLog(
            string logName,
            CallSettings callSettings = null)
        {
            DeleteLogRequest request = new DeleteLogRequest
            {
                LogName = logName,
            };

            GrpcClient.DeleteLog(
                request,
                _clientHelper.BuildCallOptions(null, callSettings));
        }
        /// <summary>
        /// Deletes a log and all its log entries.
        /// The log will reappear if it receives new entries.
        /// </summary>
        /// <param name="log_name">
        /// Required. The resource name of the log to delete.  Example:
        /// `"projects/my-project/logs/syslog"`.
        /// </param>
        /// <param name="cancellationToken">If not null, a <see cref="CancellationToken"/> to use for this RPC.</param>
        /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
        /// <returns>A Task containing the RPC response.</returns>
        public override Task DeleteLogAsync(
            string logName,
            CancellationToken?cancellationToken = null,
            CallSettings callSettings           = null)
        {
            DeleteLogRequest request = new DeleteLogRequest
            {
                LogName = logName,
            };

            return(GrpcClient.DeleteLogAsync(
                       request,
                       _clientHelper.BuildCallOptions(cancellationToken, callSettings)
                       ).ResponseAsync);
        }