搜索

10.4. 端点选项

download PDF

Azure Storage Blob Service 端点使用 URI 语法进行配置:

azure-storage-blob:accountName/containerName

使用以下路径和查询参数:

10.4.1. 路径参数(2 参数)

Name描述默认值类型

accountName (common)

用于使用 azure blob 服务进行身份验证的 Azure 帐户名称。

 

字符串

containerName (common)

blob 容器名称。

 

字符串

10.4.2. 查询参数(48 参数)

Name描述默认值类型

blobName (common)

blob 名称,使用容器中的特定 blob。但是,在制作者上,只有 blob 级别上的操作才需要。

 

字符串

blobOffset (common)

为上传或下载操作设置 blob 偏移,默认为 0。

0

long

blobServiceClient (common)

客户端到存储帐户。此客户端不包含有关特定存储帐户的状态,而是便捷地将适当的请求发送到该服务上的资源。它还可用于将 URL 构造到 blob 和容器。此客户端包含服务帐户的操作。容器的操作可以通过 getBlobContainerClient (String)在 BlobContainerClient (String)上提供,并且 BlobClient 上的操作可以通过 getBlobContainerClient (String).getBlobClient (String)获得。

 

BlobServiceClient

blobType (common)

blob 类型,为每个 blob 类型启动适当的设置。

Enum 值:

  • blockblob
  • appendblob
  • pageblob

blockblob

BlobType

closeStreamAfterRead (common)

在读取或保持打开后关闭流,默认为 true。

true

布尔值

credentials (common)

可以注入 StorageSharedKeyCredential 来创建 azure 客户端,这包含重要的身份验证信息。

 

StorageSharedKeyCredential

dataCount (common)

范围内的字节数。如果指定,则必须大于或等于 0。

 

Long

fileDir (common)

下载的 Blob 保存到的文件的目录,这可用于生成者和消费者。

 

字符串

maxResultsPerPage (common)

指定要返回的 Blob 数量上限,包括所有 BlobPrefix 元素。如果请求没有指定 maxResultsPerPage 或指定大于 5,000 的值,服务器将返回最多 5,000 个项目。

 

整数

maxRetryRequests (common)

指定从响应正文读取数据时将要进行的额外 HTTP 获取请求的最大数量。

0

int

prefix (common)

过滤结果,以仅返回名称以指定前缀开头的 Blob。可以是 null,以返回所有 Blob。

 

字符串

regex (common)

过滤结果,以仅返回名称与指定正则表达式匹配的 Blob。如果同时设置了 prefix 和 regex,则正则表达式 可能是 null,则忽略 priority 和 prefix。

 

字符串

serviceClient (common)

Autowired Client 到存储帐户。此客户端不包含有关特定存储帐户的状态,而是便捷地将适当的请求发送到该服务上的资源。它还可用于将 URL 构造到 blob 和容器。此客户端包含服务帐户的操作。容器的操作可在 BlobContainerClient via BlobServiceClient114getBlobContainerClient (String)上提供,并且 blob 上的操作可以通过 BlobContainerClient114getBlobClient (String)在 BlobClient 上提供。

 

BlobServiceClient

timeout (common)

可选的超时值,超过 RuntimeException 会被引发。

 

Duration

bridgeErrorHandler (consumer)

允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。

false

布尔值

sendEmptyMessageWhenIdle (consumer)

如果轮询使用者没有轮询任何文件,您可以启用此选项来发送空消息(无正文)。

false

布尔值

exceptionHandler (consumer (advanced))

要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。

 

ExceptionHandler

exchangePattern (consumer (advanced))

在消费者创建交换时设置交换模式。

Enum 值:

  • InOnly
  • InOut
  • InOptionalOut
 

ExchangePattern

pollStrategy (consumer (advanced))

可插拔 org.apache.camel.PollingConsumerPollingStrategy 允许您提供自定义实施来控制在轮询操作期间通常会发生错误处理,然后再创建交换并在 Camel 中路由。

 

PollingConsumerPollStrategy

blobSequenceNumber (producer)

用户控制的值,可用于跟踪请求。序列号的值必须在 0 到 263 到 1 之间。默认值为 0。

0

Long

blockListType (producer)

指定要返回的块类型。

Enum 值:

  • 已提交
  • 未提交
  • all

已提交

BlockListType

changeFeedContext (producer)

在使用 getChangeFeed producer 操作时,这提供了在服务调用期间通过 Http 管道传递的额外上下文。

 

Context

changeFeedEndTime (producer)

使用 getChangeFeed producer 操作时,这将过滤结果,以便在结束时间前返回事件。注: 也可以返回属于下一个小时的一些事件。属于此小时的几个事件可能会缺失;为了确保返回小时中的所有事件,以一小时结束时间。

 

OffsetDateTime

changeFeedStartTime (producer)

使用 getChangeFeed producer 操作时,这将过滤结果,以便在开始时间后大约返回事件。注: 也可以返回属于上一个小时的一些事件。属于此小时的几个事件可能会缺失;为了确保返回来自小时的所有事件,按一小时循环开始时间。

 

OffsetDateTime

closeStreamAfterWrite (producer)

在写或保持打开后关闭流,默认为 true。

true

布尔值

commitBlockListLater (producer)

当设置为 true 时,暂存块不会直接提交。

true

布尔值

createAppendBlob (producer)

当设置为 true 时,在提交附加块时将创建附加块。

true

布尔值

createPageBlob (producer)

当设置为 true 时,上传页面 Blob 时将创建页面 blob。

true

布尔值

downloadLinkExpiration (producer)

覆盖 URL 下载链接的默认过期时间(millis)。

 

Long

lazyStartProducer (producer)

生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。

false

布尔值

operation (producer)

可在制作者上与这个组件一起使用的 blob 操作。

Enum 值:

  • listBlobContainers
  • createBlobContainer
  • deleteBlobContainer
  • listBlobs
  • getBlob
  • deleteBlob
  • downloadBlobToFile
  • downloadLink
  • uploadBlockBlob
  • stageBlockBlobList
  • commitBlobBlockList
  • getBlobBlockList
  • createAppendBlob
  • commitAppendBlob
  • createPageBlob
  • uploadPageBlob
  • resizePageBlob
  • clearPageBlob
  • getPageBlobRanges

listBlobContainers

BlobOperationsDefinition

pageBlobSize (producer)

指定页面 blob 的最大大小,最多 8 TB。页面 blob 大小必须与 512 字节边界一致。

512

Long

backoffErrorThreshold (scheduler)

在 backoffMultipler 应该 kick-in 之前发生的后续错误轮询(因为某些错误)的数量。

 

int

backoffIdleThreshold (scheduler)

在 backoffMultipler 应该 kick-in 之前应该发生的后续空闲轮询数量。

 

int

backoffMultiplier (scheduler)

如果一行中有很多后续空闲/errors,则让调度的轮询消费者避退。然后,倍数是在下一次实际尝试再次发生前跳过的轮询数量。当使用这个选项时,还必须配置 backoffIdleThreshold 和/或 backoffErrorThreshold。

 

int

delay (scheduler)

下一次轮询前的时间(毫秒)。

500

long

greedy (scheduler)

如果启用了 greedy,如果上一个运行轮询 1 或更多消息,则 ScheduledPollConsumer 将立即运行。

false

布尔值

initialDelay (scheduler)

第一次轮询开始前的毫秒。

1000

long

repeatCount (scheduler)

指定触发的最大数量。因此,如果您将其设置为 1,调度程序将只触发一次。如果您将其设置为 5,它将只触发五次。值为零或负数表示会永久触发。

0

long

runLoggingLevel (scheduler)

消费者在轮询时记录 start/complete log 行。这个选项允许您为其配置日志级别。

Enum 值:

  • TRACE
  • DEBUG
  • INFO
  • WARN
  • ERROR
  • OFF

TRACE

LoggingLevel

scheduledExecutorService (scheduler)

允许配置用于消费者的自定义/共享线程池。默认情况下,每个使用者都有自己的单线程线程池。

 

ScheduledExecutorService

scheduler (scheduler)

要使用 camel-spring 或 camel-quartz 组件的 cron 调度程序。使用值 spring 或 quartz 用于内置在调度程序中。

none

对象

schedulerProperties (scheduler)

在使用自定义调度程序或任何基于 Spring 的调度程序时配置附加属性。

 

Map

startScheduler (scheduler)

调度程序是否应自动启动。

true

布尔值

timeUnit (scheduler)

initialDelay 和 delay 选项的时间单位。

Enum 值:

  • NANOSECONDS
  • MICROSECONDS
  • MILLISECONDS
  • SECONDS
  • MINUTES
  • HOURS
  • DAYS

MILLISECONDS

TimeUnit

useFixedDelay (scheduler)

控制是否使用固定延迟或固定率。详情请参阅 JDK 中的 ScheduledExecutorService。

true

布尔值

accessKey (security)

用于连接 azure 帐户名称的访问密钥,用于使用 azure blob 服务进行身份验证。

 

字符串

sourceBlobAccessKey (security)

source Blob Access Key: 对于复制blob 操作,我们需要为源 Blob 有一个 accessKey,我们需要复制 accessKey 作为标头,因此我们可以设置为密钥。

 

字符串

所需信息选项

要使用此组件,您需要 3 个选项来提供所需的 Azure 身份验证信息:

  • 为您的 Azure 帐户提供 accountNameaccessKey,这是开始的最简单方法。accessKey 可通过您的 Azure 门户生成。
  • 提供 StorageSharedKeyCredential 实例,它可以提供给 凭证 选项。
  • 提供 BlobServiceClient 实例,它可以提供给 blobServiceClient。注: 您不需要创建特定的客户端,如 BlockBlobClient,BlobServiceClient 代表顶层,可用于检索较低级别的客户端。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.