问题标签 [timer-jobs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sharepoint - 手动启动 SharePoint 计时器作业
我想手动调用安装在 SharePoint 服务器上的计时器作业。有用的是类似于 stsadm 命令的内容。
我的场景是,我已经为客户服务器部署了一个具有大量功能的解决方案。我不想等待每周的时间表来启动特定的计时器工作。我只想输入一个命令来立即运行特定的工作。显然,在开发环境中,我已经设置了几分钟的时间表,但我想在现场与客户一起进行试运行。
sharepoint - SharePoint:Timerjobs 锁定类型
我正在尝试在 WSS 3.0 中创建一个计时器作业。我的计时器作业将创建 SPsite 的对象,然后是 SPWeb,然后是 SPDocumentLibrary(或可能是图片库),使用它们存储在任何 xml 或数据库中的 GUID。之后,它将在某些第三方应用程序中备份文档库中的文档,并然后删除那些文件。
所以我的问题是:理想情况下,我的 SPJobLockType 'None' 或 'Job' 或 'ContentDatabase' 应该是什么?以下是我在阅读了一些关于计时器工作的文章后的理解。如果我在任何地方错了,请纠正我,因为我对 SharePoint 很陌生
如果我使用“无”,那么我的工作将在场中的每台服务器上运行。我真的需要那个吗?因为我的工作只是修改/删除文档(我通过我的计时器工作只修改内容数据库。如果我错了,请纠正我)。
如果我使用锁定类型“作业”,那么我的作业将仅在执行作业创建代码的服务器上运行。但它可以满足我的要求(我想是这样,但我不确定如果有错请纠正我)。
我已经阅读了这篇关于 ContentDatabase LockType 的文章。它说
简而言之,它与作业一几乎相同,这意味着它只运行一台服务器..但是..正如彼得在 SharePoint 2007 中的自定义计时器作业所需的帮助中找到的那样,该作业针对与 WebApplication 关联的每个 ContentDatabase 运行. 另一个(相当烦人的)事实是,它何时在下一个内容数据库上运行是不可预测的。
请提出您的想法/建议。
sharepoint - 未调用 SharePoint 计时器作业
我有一个已部署到具有多个 Web 前端的服务器的计时器作业。
- 此计时器作业从分层对象存储中读取其配置。
- 此计时器作业计划每天在服务器上运行。
但问题是这个计时器作业不是每天都被调用的。我已经在计时器作业的 Execute() 方法中实现了事件日志记录,但我没有看到正在生成任何日志。
关于什么可能导致 SharePoint 计时器服务无法执行计时器作业的任何想法?如何解决此问题?
是否有任何“陷阱”可以从多个前端在服务器中运行计时器作业?计时器作业会在所有 Web 前端执行,还是任意一个?如何知道哪台机器会有我的事件日志?
这可能是一个愚蠢的问题,但是拥有多个负载平衡前端是否会影响分层对象存储的行为方式?
编辑:
其中一位评论者 Sean McDounough(感谢 Sean !!)提出了一个很好的观点:
“计时器作业是否在所有 WFE 上运行将取决于您在构造函数中指定的 SPJobLockType 枚举值。使用值“无”意味着该作业将在所有 WFE 上运行。”
现在,我的计时器工作负责定期向用户列表发送邮件。目前它被标记为“SPJobLockType.Job”
如果我将其更改为 SPJobLockType.None,这是否意味着我的计时器作业将分别在所有 WFE 中执行?(这是不需要的,它会向所有用户发送多封电子邮件)
或者这是否意味着计时器作业将在任何一个 WFE 中任意执行?
sharepoint - SharePoint 计时器作业中的“RunWithElevatedPrivileges”?
我们可以在 SharePoint 计时器作业中使用 SPSecurity.RunWithElevatedPrivileges 吗?
计时器作业将以谁的身份在提升的权限下运行?
任何有关这方面的问题和必须知道的事实也将不胜感激。
cakephp - 执行 Cron 作业的问题
我在 Cake PHP 中做了一个投标网站。我面临的主要问题是我需要在服务器上运行 CRON JOBS。但我不知道为什么它会困扰我。我已经创建了一个名为“deamons”的控制器,并且有 4 个它的不同动作,我想每分钟在服务器上连续运行,以便我们可以运行该投标站点的每个用户设置的自动投标器。我正在设置的 Cron 作业是... curl -s -o /dev/null http://www.domain.com/app/webroot/daemons/bidbutler
curl -s -o /dev/null http:// www.domain.com/app/webroot/daemons/extend
curl -s -o /dev/null http://www.domain.com/app/webroot/daemons/autobid
curl -s -o /dev/null http: //www.domain.com/app/webroot/daemons/close
处理所有东西的控制器附在下面....!!! 请建议我一些解决方案,以便
如果专家想测试它.. URL 是 www.domain.com/app/webroot
这是代码......我试图通过 CRNS 运行......!!!
类 DaemonsController 扩展 AppController {
} ?>
sharepoint - 如何在 Sharepoint 计时器作业中显示失败状态
我希望我的计时器作业在特定条件下显示失败状态。我应该抛出一个异常还是什么?
sharepoint - Sharepoint 计时器作业
有没有办法调整 Sharepoint 计时器作业的时间表?我在中央管理中看到的唯一选项是启用/禁用作业的选项以及更改作业名称的方法。我是否需要某种权限才能实际开始工作或编辑任何有意义的数据?
当有人离开公司时,我继承了几个项目,所以请原谅我对 Sharepoint 的一切一无所知。
谢谢乔
sharepoint - SPJobDefinition.Execute 正在运行但未显示它在 Central Admin 中运行
我正在使用 SPJobDefinition.Execute 显式强制计时器作业运行以进行一些测试。作业运行,但上次运行的时间在“计时器作业状态”或“计时器作业定义”中均未更改。由于这之前没有运行过,因此强制它甚至不会出现在“计时器作业状态”中。我记得当我上次尝试此操作时,它确实更新了中央管理员内的上次运行时间。所以要么有些东西坏了,它没有更新状态,要么它没有按设计更新状态,我上次弄错了。
sharepoint - Sharepoint 计时器作业和 log4net
我正在开发一个自定义 SharePoint 解决方案,它包含一个功能和一个计时器作业(由 FeatureActivated 中的功能创建)。在我的解决方案中,我想使用 log4net 进行日志记录(我知道 ULS)。
功能本身中的 log4net 一切都很好(只是将 log4net.config 放在 web.config 附近,一切都很好),但我完全不知道如何从计时器作业初始化 log4net(考虑到它不是由 IIS 运行,而是由OSW定时器)。
有人可以帮我找到问题的答案:
- 在哪里存储 log4net.config 以及如何将其传递给作业?
- 每次调用 Execute() 方法时是否需要初始化 log4net?
谢谢!
c# - SharePoint 计时器作业在按计划运行时无法正常工作,但在手动运行时正常
我有一个 SharePoint 计时器作业,它需要一个文档库并放置文档,将它们转换为 PDF,然后每晚将它们放入 SQL 服务器。问题是,计时器作业在按计划调用时似乎不起作用。如果我安装它,然后使用我编写的一个小控制台应用程序,调用它可以正常工作的作业执行。当它按计划运行时,它不会。
我知道作业正在运行的原因:
- 计时器作业状态表示它在午夜后约 12 分钟完成(从午夜开始)
- 目标数据库表已被截断(任务是在导出之前执行此操作)
我知道有问题的原因:
- 数据库为空且不包含任何文档。手动运行它会用文档填充它
- 第一行代码应该输出到事件日志,但它不会这样做一次。手动运行作业多次正确记录。另一个用于测试写入日志的计时器作业在此服务器上正常工作。
现在我在想,在 owstimer 下运行而不是控制台应用程序时,与权限有关是一件很奇怪的事情。但事实是,它所做的第一件事就是记录到 Windows 事件日志中,这并没有发生,但在一个只这样做的计时器作业中,它确实有效。并且在似乎没有发生的事件记录之后,正在命中截断代码。