当前位置: 首页>>代码示例>>Python>>正文


Python OpenEdXInstanceFactory.enable_monitoring方法代码示例

本文整理汇总了Python中instance.tests.models.factories.openedx_instance.OpenEdXInstanceFactory.enable_monitoring方法的典型用法代码示例。如果您正苦于以下问题:Python OpenEdXInstanceFactory.enable_monitoring方法的具体用法?Python OpenEdXInstanceFactory.enable_monitoring怎么用?Python OpenEdXInstanceFactory.enable_monitoring使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在instance.tests.models.factories.openedx_instance.OpenEdXInstanceFactory的用法示例。


在下文中一共展示了OpenEdXInstanceFactory.enable_monitoring方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_enable_monitoring

# 需要导入模块: from instance.tests.models.factories.openedx_instance import OpenEdXInstanceFactory [as 别名]
# 或者: from instance.tests.models.factories.openedx_instance.OpenEdXInstanceFactory import enable_monitoring [as 别名]
    def test_enable_monitoring(self, mock_newrelic):
        """
        Check that the `enable_monitoring` method creates New Relic Synthetics
        monitors for each of the instance's public urls, and enables email
        alerts.
        """
        monitor_ids = [str(uuid4()) for i in range(3)]
        mock_newrelic.get_synthetics_monitors.return_value = []
        mock_newrelic.create_synthetics_monitor.side_effect = monitor_ids
        instance = OpenEdXInstanceFactory()
        instance.enable_monitoring()

        # Check that the monitors have been created
        mock_newrelic.delete_synthetics_monitor.assert_not_called()
        mock_newrelic.create_synthetics_monitor.assert_has_calls([
            call(instance.url),
            call(instance.studio_url),
            call(instance.lms_preview_url),
        ], any_order=True)
        self.assertCountEqual(
            instance.new_relic_availability_monitors.values_list('pk', flat=True),
            monitor_ids
        )

        # Check that alert emails have been set up
        mock_newrelic.add_synthetics_email_alerts.assert_has_calls([
            call(monitor_id, ['[email protected]'])
            for monitor_id in monitor_ids
        ], any_order=True)
开发者ID:open-craft,项目名称:opencraft,代码行数:31,代码来源:test_openedx_monitoring_mixins.py

示例2: test_update_monitoring

# 需要导入模块: from instance.tests.models.factories.openedx_instance import OpenEdXInstanceFactory [as 别名]
# 或者: from instance.tests.models.factories.openedx_instance.OpenEdXInstanceFactory import enable_monitoring [as 别名]
    def test_update_monitoring(self, mock_newrelic):
        """
        Check that the `enable_monitoring` method only creates New Relic
        Synthetics monitors for urls that are not already monitored, and
        removes monitors for urls that are no longer used.
        """
        instance = OpenEdXInstanceFactory()
        existing_monitors = [
            instance.new_relic_availability_monitors.create(pk=str(uuid4()))
            for i in range(2)
        ]
        mock_newrelic.get_synthetics_monitors.return_value = [
            # This monitor is fine, keep it
            {
                'id': existing_monitors[0].pk,
                'uri': instance.url,
            },
            # This monitor is for an old url, delete it
            {
                'id': existing_monitors[1].pk,
                'uri': 'http://example.com/old-url',
            },
        ]
        new_ids = [str(uuid4()) for i in range(2)]
        mock_newrelic.create_synthetics_monitor.side_effect = new_ids
        instance.enable_monitoring()

        # Check that the old monitor has been deleted and that new monitors
        # have been created
        mock_newrelic.delete_synthetics_monitor.assert_called_once_with(existing_monitors[1].pk)
        mock_newrelic.create_synthetics_monitor.assert_has_calls([
            call(instance.studio_url),
            call(instance.lms_preview_url),
        ], any_order=True)
        self.assertCountEqual(
            instance.new_relic_availability_monitors.values_list('pk', flat=True),
            [existing_monitors[0].pk] + new_ids
        )
开发者ID:open-craft,项目名称:opencraft,代码行数:40,代码来源:test_openedx_monitoring_mixins.py


注:本文中的instance.tests.models.factories.openedx_instance.OpenEdXInstanceFactory.enable_monitoring方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。