如何使用BTDF更新BizTalk解决方案

如何使用BTDF更新BizTalk解决方案,biztalk,biztalk-deployment,btdf,Biztalk,Biztalk Deployment,Btdf,使用BTDF并使用生成的安装程序包部署原始部署时,将删除现有应用程序并创建新应用程序,从而删除业务流程执行的历史记录 这对于我们的组织来说是一个潜在的问题,因为我们需要最近完成的编排,以便在需要时进行审核/调试 在BTDF中是否有办法绕过此限制?否,一旦取消部署应用程序,跟踪数据就会消失。您有几个选择: 在应用程序取消部署之前,在BTDF中配置自定义目标,以备份跟踪数据库中的相关数据。我不推荐这个。这需要一些努力才能弄清楚,而且很难正常工作 将业务流程配置为执行自定义日志记录(到数据库)以进行审

使用BTDF并使用生成的安装程序包部署原始部署时,将删除现有应用程序并创建新应用程序,从而删除业务流程执行的历史记录

这对于我们的组织来说是一个潜在的问题,因为我们需要最近完成的编排,以便在需要时进行审核/调试


在BTDF中是否有办法绕过此限制?

否,一旦取消部署应用程序,跟踪数据就会消失。您有几个选择:

  • 在应用程序取消部署之前,在BTDF中配置自定义目标,以备份跟踪数据库中的相关数据。我不推荐这个。这需要一些努力才能弄清楚,而且很难正常工作
  • 将业务流程配置为执行自定义日志记录(到数据库)以进行审核。这将更加便携和可持续,但需要更多的努力
  • 无论哪种方式,如果需要调试历史版本,您都应该保留应用程序的备份/归档。冒着忽略显而易见的风险,这种调试和跟踪应该在您的开发环境中完成——应该与您的产品和QA/测试环境保持同步


    另一个更激进的可能性是修改BTDF的默认BizTalkDeploymentFramework.targets文件,以添加一个选项,在使用BTSTask.exe的任何实例中使用-Overwrite标志。但是,要做到这一点,您必须确保您正在更新的任何业务流程在尝试覆盖之前都未列出。SDK中有一个如何自动执行此任务的示例:

    C:\Program Files(x86)\Microsoft BizTalk Server 2013\SDK\Samples\Admin\WMI\Enlist Orchestration


    但是,在开发BTDF的每台机器上都显然需要这样做,如果BTDF的未来版本不支持,则需要重新进行此操作。

    您在哪里查找编排执行的历史记录?跟踪数据库?它将是管理控制台主屏幕中已完成业务流程的列表。通常基于时间,可以跟踪执行情况,使用业务流程调试器可以很容易地跟踪执行路径?Where State=completed?是的,理想情况下,如果BTDF中有方法更新现有应用程序而不是取消部署,则可以解决此问题。是否有方法配置BTDF安装程序,使其更新应用程序而不是卸载重新安装?已更新。没有简单的方法,这在技术上是可能的。