发布GP服务注意事项

在ArcMap里创建GP模型时,一定要注意,设置“应用程序级别”的环境变量——即ArcCatalog或ArcMap Toolbox那里的环境变量,然后将里面用到的中间数据都指定为:
%scratchworkspace%/data,这样在ArcGIS Server里运行的时候,这些中间数据或结果数据就会生成到Server的job目录下的对应jobID里的scratch目录里去;否则在磁盘上固定目录下肯定会造成GP服务执行出错;

其它源数据可以和gp工具放在一个目录下,设置模型以相对路径保存,这样可以保证模型和数据的路径始终正确。

 

注意:1、数据的路径是%scratchworkspace%/数据名,中间不要加文件夹目录,否则在Desktop下执行的时候,我们可以在%scratchworkspace%下创建这个目录,但在Server里以服务执行的时候就没有这个目录了,会导致找不到数据路径的错误。

但是可以添加File GDB,如%scratchworkspace%/scratch.gdb/数据名,这样GP服务在运行时会在job目录下创建这个File GDB

2、更改GP服务数据源或参数等(对Model进行了修改),重启GP服务后,要清除rest缓存,否则会出错,典型的错误:

WARNING 001000: Z 值字段: 字段 ZZ不存在 值不存在。 ERROR 000732: XY 表: 数据集 数据库连接\OLE DB Connection.odc\CELL_INFO 不存在或不受支持 WARNING 001000: Z 值字段: 字段 ZZ不存在</Msg>
<Msg time='2012-05-08T15:10:16' type='ERROR' code='20010' target='cnds.GPServerSync' methodName='GPServerSync.CheckMessages' machine='BONE_NET' process='7188' thread='6832'>执行工具时出错。</Msg>

 

3、造成上述错误还有个可能原因,那就是找不到数据源(或者对数据源没有足够的权限)。

比如我们添加数据库里的空间图层或普通表,通常情况下数据源的输入参数是:数据库连接\OLE DB Connection.odc\SDE.ZTE_DATA,这种相对路径,有可能会导致上述错误。

解决:将数据源连接文件(OLE DB Connection.odc)拷贝到GP工具目录下,指定输入参数为绝对路径:E:\test\OLE DB Connection.odc\SDE.ZTE_DATA,就OK了——针对连接空间数据库的connection.sde文件也是如此。

 

 

    gp服务分同步和异步,如果结果要通过result map service 绘制,只能选择异步;因为两个服务是分步执行的,必须gp服务先将结果生成到job目录,result map service再去读,然后绘出来发给前端 ;同步情况是不允许指定result map service的结果由gp服务直接返回给客户端的。

异步执行,会将scratchworkspace指定到\agsserver\jobs..../scratch目录下,生成的结果也在该目录;如果是同步执行,GP Service的执行结果会放到用户的临时目录下:

同步执行可以返回执行过程消息:

 

执行结果信息:

消息:

  • esriJobMessageTypeInformative: 执行(contour): Model QIYA 0 100 C:\Users\AGSSER~1\AppData\Local\Temp\gp\contourgp_gpserver\j8df4f14d48b740bf9a3d2349ee593794\scratch\contourline.shp
  • esriJobMessageTypeInformative: 开始时间: Mon Feb 06 14:40:39 2012
  • esriJobMessageTypeInformative: 执行(IDW): Idw zhandian QIYA C:\Users\AGSSER~1\AppData\Local\Temp\gp\contourgp_gpserver\j8df4f14d48b740bf9a3d2349ee593794\scratch\idw.img .146536000000919 2 "VARIABLE 12" #
  • esriJobMessageTypeInformative: 开始时间: Mon Feb 06 14:40:39 2012
  • esriJobMessageTypeInformative: 成功 在 Mon Feb 06 14:40:40 2012 (经历的时间: 1.00 秒)
  • esriJobMessageTypeInformative: 执行(Contour): Contour C:\Users\AGSSER~1\AppData\Local\Temp\gp\contourgp_gpserver\j8df4f14d48b740bf9a3d2349ee593794\scratch\idw.img C:\Users\AGSSER~1\AppData\Local\Temp\gp\contourgp_gpserver\j8df4f14d48b740bf9a3d2349ee593794\scratch\contour.shp 100 0 1
  • esriJobMessageTypeInformative: 开始时间: Mon Feb 06 14:40:40 2012
  • esriJobMessageTypeInformative: 成功 在 Mon Feb 06 14:40:40 2012 (经历的时间: 0.00 秒)
  • esriJobMessageTypeInformative: 执行(Clip): Clip C:\Users\AGSSER~1\AppData\Local\Temp\gp\contourgp_gpserver\j8df4f14d48b740bf9a3d2349ee593794\scratch\contour.shp polygon C:\Users\AGSSER~1\AppData\Local\Temp\gp\contourgp_gpserver\j8df4f14d48b740bf9a3d2349ee593794\scratch\contourline.shp #
  • esriJobMessageTypeInformative: 开始时间: Mon Feb 06 14:40:40 2012
  • esriJobMessageTypeInformative: 正在读取要素...
  • esriJobMessageTypeInformative: 正在裂化要素...
  • esriJobMessageTypeInformative: 正在组合要素...
  • esriJobMessageTypeInformative: 成功 在 Mon Feb 06 14:40:41 2012 (经历的时间: 1.00 秒)
  • esriJobMessageTypeInformative: 成功 在 Mon Feb 06 14:40:41 2012 (经历的时间: 2.00 秒)

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值