Beispiel #1
0
    def get(self, request, pk):

        agent = get_object_or_404(Agent, pk=pk)
        ctx = {
            "default_tz": get_default_timezone(),
            "agent_tz": agent.time_zone,
        }
        return Response(AutoTaskSerializer(agent, context=ctx).data)
Beispiel #2
0
    def patch(self, request):
        if "sitePK" in request.data.keys():
            queryset = (
                Agent.objects.select_related("site", "policy", "alert_template")
                .prefetch_related("agentchecks")
                .filter(site_id=request.data["sitePK"])
            )
        elif "clientPK" in request.data.keys():
            queryset = (
                Agent.objects.select_related("site", "policy", "alert_template")
                .prefetch_related("agentchecks")
                .filter(site__client_id=request.data["clientPK"])
            )
        else:
            queryset = Agent.objects.select_related(
                "site", "policy", "alert_template"
            ).prefetch_related("agentchecks")

        queryset = queryset.only(
            "pk",
            "hostname",
            "agent_id",
            "site",
            "policy",
            "alert_template",
            "monitoring_type",
            "description",
            "needs_reboot",
            "overdue_text_alert",
            "overdue_email_alert",
            "overdue_time",
            "offline_time",
            "last_seen",
            "boot_time",
            "logged_in_username",
            "last_logged_in_user",
            "time_zone",
            "maintenance_mode",
        )
        ctx = {"default_tz": get_default_timezone()}
        serializer = AgentTableSerializer(queryset, many=True, context=ctx)
        return Response(serializer.data)
Beispiel #3
0
 def get_entry_time(self, log):
     timezone = get_default_timezone()
     return log.entry_time.astimezone(timezone).strftime(
         "%m %d %Y %H:%M:%S")
Beispiel #4
0
def get_win_updates(request, pk):
    agent = get_object_or_404(Agent, pk=pk)
    ctx = {"default_tz": get_default_timezone()}
    serializer = UpdateSerializer(agent, context=ctx)
    return Response(serializer.data)
Beispiel #5
0
 def get_snoozed_until(self, instance):
     if instance.snooze_until:
         return instance.snooze_until.astimezone(
             get_default_timezone()).timestamp()
     return None
Beispiel #6
0
 def get_resolve_on(self, instance):
     if instance.resolved_on:
         return instance.resolved_on.astimezone(
             get_default_timezone()).timestamp()
     else:
         return None
Beispiel #7
0
 def get_alert_time(self, instance):
     if instance.alert_time:
         return instance.alert_time.astimezone(
             get_default_timezone()).timestamp()
     else:
         return None