【发布时间】:2013-12-11 23:41:43
【问题描述】:
我希望 Sitecore 仅在访问者匹配特定模式卡后执行 Maxmind 查找。我可以在 Sitecore.Analytics.Config 的 cmets 中看到大量对“DNS 查找任务”的引用,但我似乎无法追踪它以查看是否有可能弄乱它。
有人能指出正确的方向吗?
【问题讨论】:
标签: sitecore sitecore-dms maxmind
我希望 Sitecore 仅在访问者匹配特定模式卡后执行 Maxmind 查找。我可以在 Sitecore.Analytics.Config 的 cmets 中看到大量对“DNS 查找任务”的引用,但我似乎无法追踪它以查看是否有可能弄乱它。
有人能指出正确的方向吗?
【问题讨论】:
标签: sitecore sitecore-dms maxmind
在我看来,GeoIPLookup 是在 UpdateGeoIpData 处理器的 StartTracking 管道中触发的。它异步调用查找提供程序。
所以我猜你可以用你自己的继承来替换这个处理器,然后添加你的条件。这样你就会有类似的东西:
public class UpdateGeoProcessor : UpdateGeoIpData
{
public override void Process(StartTrackingArgs args)
{
if (true) //Put your condition here
{
base.Process(args);
}
}
}
然后在你的配置文件中你应该有这样的东西:
<startTracking>
<processor type="Sitecore.Analytics.Pipelines.StartTracking.RaiseStartTracking,Sitecore.Analytics" />
<processor type="Sitecore.Analytics.Pipelines.StartTracking.InitializeTracker,Sitecore.Analytics" />
<processor type="yyy.UpdateGeoProcessor,yyy" />
<processor type="Sitecore.Analytics.Pipelines.StartTracking.TrackerInitialized,Sitecore.Analytics" />
据我所知,这应该可以处理它,但我无法彻底测试它。
【讨论】: