乐趣区

关于rpa:云扩研习社-流程设计指南下

01. 日志

系统日志

系统日志是指机器人、编辑器产生的执行日志,个别由云扩研发团队进行技术支持时应用。

  • 编辑器,参考(需替换用户):
    C:\Users{user}\AppData\Local\Encoo\Log
  • 机器人,在机器人装置目录下,参考:
    C:\Program Files (x86)\Encoo Robot\Logs

业务日志

业务日志是指设计流程时依据业务的理论状况把一些有必要的信息作为日志来输入,用以后续业务核查或者流程中逻辑及流程运行状况的查看。

日志级别,共有三个选项:Debug, Info, Error,抉择其中一项代表后续的编辑器、机器人、控制台能看到的日志信息:

  • 抉择 Debug 后,可查看最具体的日志信息
  • 抉择 Info 后,可查看 Info 和 Error 等级的日志信息
  • 抉择 Error 后,将只输入 Error 日志

如何定义日志级别?

流程的最开始倡议调用【设置日志级别】组件,通过输出参数【日志级别】管制流程输入的日志信息,个别状况下,针对 RPA 开发者倡议应用 Debug 级别。针对流程用户倡议应用 Info 或 Error 级别。

那么什么状况下应该写业务日志?

失常的业务记录日志倡议应用 Info,针对某些已知的问题(不须要抛出谬误),例如没有数据时下载按钮不可见,能够写入日志,以不便后续业务核查。

异样的谬误倡议应用 Error,针对某些未知的谬误,例如 Catches 中的异样,能够把异样日志
exception.Message+exception.StackTrace 进行输入。

日志输入地位

编辑器日志

办法 1:流程运行后输入窗口可见日志,可依据界面上的谬误、信息、调试进行筛选

办法 2:开始 – 设置 – 我的项目,勾选【保留运行、调试日志】,关上目录下的日志文件夹

机器人日志

关上流程库 – 流程包 – 日志

点击日志关上文件夹:

  • job-xxx.log:记录组件运行日志
  • job-xxx-businesslog.log:记录业务日志

控制台日志

关上控制台 -RPA 核心 - 执行记录,查看日志,也能够在此页面的日志级别中筛选对应的级别,例如个别会筛选谬误级别的日志,以不便查看流程报错状况。

02. 告诉

业务告诉

个别状况下流程运行胜利、失败、两头须要人工染指等状况,倡议进行告诉。

业务告诉的形式有短信、邮件、钉钉、企业微信。抉择什么样的告诉形式取决于用户群体的应用习惯:

1)短信形式,目前较多用于银行和政府,绝对比拟正式,实时性强,而且即便在没有流量的时候仍然能够顺利接管。

2)邮件形式,应用比拟宽泛,能够发送 / 抄送给不同的用户,还可携带附件,能够很好进行追溯。

3)钉钉形式,须要企业中应用钉钉作为沟通工具,实时性强,个别作为告诉来应用,比方流程须要人工染指,须要及时在钉钉中进行反馈。或者流程运行胜利或者失败,也能够及时告诉到用户。

4)企业微信形式,须要企业中应用企业微信作为沟通工具,阐明可参考钉钉形式。

告诉形式

短信告诉

短信告诉次要是两种形式:

第一种是阿里或者其余平台提供的短信平台,间接调用相干的 API 接口即可发短信。

第二种是须要搭建一个短信平台服务,而后依据平台的接口去调用发送短信。

邮件告诉

邮件告诉须要配置邮件发送方的服务器、代理、端口、明码、地址,还须要配置接管方的邮箱、内容、附件。

因为邮件发送服务器或者接管方有可能不稳固,倡议放入重试组件中,能够多重试几次,升高失败率。

钉钉 / 企业微信

装置音讯推送组件

通过组件市场搜寻【音讯推送】并进行装置

从新加载我的项目后,在编辑器组件库音讯推送中查看【钉钉音讯推送】和【企业微信音讯推送】

钉钉音讯推送

简略来说,如果只须要进行音讯推送,首先新建一个钉钉群机器人,配置关键词,再把 WebHook 拷贝到组件,文本里须要蕴含机器人关键词,这样就能够把对应的文本推送给钉钉群。

企业微信音讯推送

与钉钉音讯推送相似,企业微信也须要先新建一个群机器人,再把 WebHook 拷贝到组件,这样就能够把对应的文本推送给企业微信群。

03. 错误处理

在不写 Try Catch 的状况下,组件异样会间接中断流程(除非勾选了失败持续),Studio 会在输入框打印日志,Robot 会对整个屏幕截图,记录日志并中断流程。

是否应该全局 Try Catch

须要依据理论状况应用 Try Catch,应用全局 Try Catch 代表须要捕捉整体流程的谬误:

Try 中放入整体流程,若 Try 中出现异常,则会进入 Catch(能够多个 Catch 同时存在),在此能够打印日志并告诉提醒用户出错了,打印消息可参考:exception.Message+exception.StackTrace

Finally 可选,若须要可在 Finally 中开释资源

独自子流程应该 Catch 哪些 exception,应该抛出哪些 exception

  • 数据操作中,循环录入数据的模块中,如果数据之间是互相独立的,所以心愿出现异常也持续运行流程,倡议应用 Try Catch 组件用以捕捉因异样数据导致的谬误,并且将异样数据进行对应解决(通常会告诉用户该数据有异样),同时将异样详情写入业务日志中。
  • 页面操作中,最常见的状况是页面没有按预期跳转(未点击到或者网页开小差未响应),接下来的操作会因为未匹配到元素或者期待元素超时而抛出异常中断流程。这时候咱们不心愿中断流程,能够在 Catch/Finally 中设置线程休眠 30 秒,再从新刷新页面。
  • 敞开可能呈现的弹出窗,例如 Chrome 未失常敞开,下次关上时会有提醒复原页面弹出框,咱们心愿敞开这个页面。然而这个弹窗并不是肯定呈现,咱们会尝试获取这个元素并点击敞开,这时候须要在外层套一个 Try Catch 避免抛异样(如弹窗未呈现获取元素或点击元素会抛异样),这种状况也能够把组件设定成失败持续。
退出移动版