Search Logs - Wie erhält man eine vollständige Liste für einen bestimmten Datumsbereich?

Ich kenne SQL nicht, aber hier ist, was ChatGPT mir gesagt hat, als ich fragte, wie ich Suchprotokolle für die letzten 3 Monate abfragen kann. Würde das funktionieren (ich habe keinen Admin-Zugriff, um es auszuprobieren, aber ich hätte gerne eine solide Abfrage, die ich an meinen Admin weitergeben kann).


Um alle Suchprotokolldaten der letzten 3 Monate mit dem Discourse Data Explorer abzurufen, können Sie eine neue Abfrage mit dem folgenden Code erstellen:

-- [params]
-- date :datetime
SELECT
  action_logs.id AS action_log_id,
  action_logs.created_at AS action_log_date,
  action_logs.action AS action_type,
  users.id AS user_id,
  users.username AS user_username,
  users.email AS user_email,
  user_actions.details AS search_query
FROM
  action_logs
JOIN
  user_actions ON user_actions.id = action_logs.action_id
JOIN
  users ON user_actions.user_id = users.id
WHERE
  action_logs.action = 'searched'
  AND action_logs.created_at >= :date - INTERVAL '3 months'
ORDER BY
  action_logs.created_at DESC;

In dieser Abfrage verwenden wir die Syntax -- [params], um einen Parameter namens date vom Typ datetime zu definieren. Dieser Parameter ermöglicht es Ihnen, das Datum anzugeben, für das Sie die Suchprotokolldaten abrufen möchten. Die Abfrage verwendet dann diesen Parameter, um die Suchprotokolle für die letzten 3 Monate ab dem angegebenen Datum zu filtern.

Um diese Abfrage im Discourse Data Explorer zu verwenden, gehen Sie wie folgt vor:

  1. Rufen Sie das Admin-Dashboard Ihrer Discourse-Site auf.
  2. Klicken Sie im linken Menü auf „Data Explorer“.
  3. Klicken Sie auf „New Query“, um eine neue Abfrage zu erstellen.
  4. Geben Sie Ihrer Abfrage bei Bedarf einen Namen und eine Beschreibung.
  5. Kopieren Sie den obigen SQL-Code und fügen Sie ihn in das Textfeld „Query“ ein.
  6. Klicken Sie auf die Schaltfläche „Save“, um die Abfrage zu speichern.

Nach dem Speichern können Sie die Abfrage ausführen, indem Sie auf ihren Namen im Data Explorer klicken. Ein Popup wird angezeigt, in dem Sie aufgefordert werden, den Parameterwert für date einzugeben. Geben Sie ein Datum im Format JJJJ-MM-TT (z. B. 2023-07-28) ein und klicken Sie auf „Run Query“.

Die Abfrage ruft alle Suchprotokolldaten der letzten 3 Monate ab dem angegebenen Datum ab, und die Ergebnisse werden in Tabellenform angezeigt.