Orchestrator
2021.10
False
  • 发行说明
    • 2021.10
    • 2021.10.1
    • 2021.10.2
    • 2021.10.4
    • 2021.10.6
    • 2021.10.8
    • 2021.10.9
    • 2021.10.10
    • 2021.10.11
    • 2021.10.12
    • 2021.10.14
    • 2021.10.15
横幅背景图像
Orchestrator 发行说明
上次更新日期 2024年4月19日

2021.10.4

发行日期:2022 年 4 月 7 日

通过队列触发器启动作业的新机制

经过最近关于队列触发器领域的一些反复讨论之后,我们正在重新解决队列触发器启动作业的方式 - 我们希望这是最终的最佳方式。

问题陈述:每当队列中包含的新项目少于正在进行的项目时,即使机器人处于空闲状态,也不会启动任何作业。发生这种情况是因为正在运行的作业(正在处理的队列项目)的数量将超过目标作业(处理新项目所需的作业)的数量。

初始修复:在计算目标作业数量时,让 Orchestrator 考虑新的和正在进行的队列项目,而不仅仅是新项目。此方法听起来不错。但是实际操作起来无效。

全新的解决方案:Orchestrator 在计算目标作业数量时会考虑新项目,但在决定是否启动新作业时会查看待处理作业的数量。

  • 假设队列中有 2 个新项目,并且存在 2 个待处理作业 => 则不会启动任何新作业。
  • 假设队列中有 2 个新项目,并且存在 1 个待处理作业 => 则启动 1 个新作业。

这可确保 Orchestrator 启动足够多的作业来处理所有新项目,而不会覆盖待处理作业。

改进

  • 我们知道您的 Ledger 数据库表格可能会变得非常拥挤,因此需要经常清理。为此,我们为您提供了一个新的清理脚本,允许您每 7 天删除一次分类帐数据并应用 1,000 个条目的批处理大小。在我们的文档中发现新脚本:

已知问题

  • 作为主机,尝试通过 Swagger 用户界面结束维护窗口可能会失败。发生这种情况是因为 Swagger 用户界面使用 Cookie 进行身份验证,当您关闭浏览器时,Cookie 会丢失。

    要通过 API 结束维护模式,请使用以下的其中一种解决方法:

    • 请不要关闭浏览器,并从 Swagger 用户界面向 /api/Maintenance/End 发出 POST 请求。
    • 使用 API 测试应用程序(例如 Postman)来执行以下操作:

      • 通过与 /api.Account/Authenticate 端点交换凭据来检索访问令牌,然后
      • 使用 Authorization: Bearer {access_token} 标头向 /api/Maintenance/End 端点发出 POST 请求。
    • 运行以下 PowerShell 脚本:

$orchestratorUrl="https://localhost:6234"
$hostTenant="host"
$hostUser="admin"
$hostPassword=""
$tenantId="" #number

# Authenticate
$body=@{
    "tenancyName"="$hostTenant";
    "usernameOrEmailAddress"="$hostUser";
    "password"="$hostPassword"
}

$response = Invoke-WebRequest -Uri "$orchestratorUrl/api/account/authenticate" -Method Post -Body ($body | ConvertTo-Json) -ContentType "application/json"
$token = "Bearer " + ($response | ConvertFrom-Json).result

# End maintenance mode

$headers=@{
    "Authorization"="$token"
}

$res = Invoke-WebRequest -Uri "$orchestratorUrl/api/maintenance/end?tenantId=$tenantId" -Headers $headers -Method Post -ContentType "application/json" -ErrorAction Stop

if ($res -and ($res.StatusCode -eq 200)) {
    Write-Host "Maintenance mode ended successfully for tenant $tenantId"
}$orchestratorUrl="https://localhost:6234"
$hostTenant="host"
$hostUser="admin"
$hostPassword=""
$tenantId="" #number

# Authenticate
$body=@{
    "tenancyName"="$hostTenant";
    "usernameOrEmailAddress"="$hostUser";
    "password"="$hostPassword"
}

$response = Invoke-WebRequest -Uri "$orchestratorUrl/api/account/authenticate" -Method Post -Body ($body | ConvertTo-Json) -ContentType "application/json"
$token = "Bearer " + ($response | ConvertFrom-Json).result

# End maintenance mode

$headers=@{
    "Authorization"="$token"
}

$res = Invoke-WebRequest -Uri "$orchestratorUrl/api/maintenance/end?tenantId=$tenantId" -Headers $headers -Method Post -ContentType "application/json" -ErrorAction Stop

if ($res -and ($res.StatusCode -eq 200)) {
    Write-Host "Maintenance mode ended successfully for tenant $tenantId"
}

错误修复

  • 对于允许对机器人具有特权访问权限的攻击者通过强制调用 Orchestrator 的 API 来检索同一租户中其他机器人的许可证密钥(计算机密钥)的问题,我们已修复。理论上,这将允许攻击者访问仅限于该机器人的资源。

    请阅读 UiPath - 机器人帐户接管的安全公告。

  • 有时,长时间运行的工作流的作业执行会卡在“正在运行”状态,而不会转换为“暂停”状态。终止这些作业后,这些作业将转换为并卡在“正在终止”状态。基本问题已得到修复,长时间运行的作业现在可以按预期转换为不同的状态,并且可以毫无问题地执行。
  • 我们在“将角色分配给机器人帐户”窗口中犯了一个拼写错误。该字段显示“Seach for a robot account”,而不是“Search for a robot account”。该字段名称现在已拼写正确。
  • 审核详细信息中未显示手动上传的包的名称。此问题会影响单独和批量上传的包。现在,所有上传的包的名称都已成功记录在审核详细信息中。
  • 未在 Active Directory 中指定姓氏的用户无法登录。

此页面是否有帮助?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath 白色徽标
信任与安全
© 2005-2024 UiPath. All rights reserved.