Arbitrum-Beispielabfragen

Auf dieser Seite finden Sie Beispiele für Blockchain Analytics-Abfragen für Arbitrum.

Eine Anleitung zur Verwendung von BigQuery finden Sie in der BigQuery-Dokumentation.

Anzahl der in den letzten 30 Tagen erstellten Tickets von L1 zu L2

Diese Abfrage zeigt die Anzahl der wiederholbaren Nachrichten, die in den letzten 30 Tagen zwischen Ethereum und Arbitrum erfolgreich erstellt wurden.

Rufen Sie in der Google Cloud Console die Seite BigQuery auf.

BigQuery aufrufen

SELECT
  DISTINCT COUNT(topics[OFFSET(1)]) AS num_l1_to_l2_tickets_created
FROM
  bigquery-public-data.goog_blockchain_arbitrum_one_us.logs
WHERE
  ARRAY_LENGTH(topics) > 0
AND
  -- "TicketCreated" event emitted via Arbitrum's canonical method for creating L1 to L2 messages.
  topics[OFFSET(0)] = LOWER("0x7c793cced5743dc5f531bbe2bfb5a9fa3f40adef29231e6ab165c08a29e3dd89")
AND block_timestamp > (CURRENT_TIMESTAMP() - INTERVAL 30 DAY)
;

Im Folgenden sehen Sie ein Beispiel für ein Ergebnis:

num_l1_to_l2_tickets_created
7779

Auszahlungen an L1 (Ethereum) mit verbleibendem Streitzeitraum anzeigen

Diese Abfrage zeigt Abhebungen von ETH von Arbitrum zu Ethereum über die offizielle Arbitrum-Bridge und den verbleibenden geschätzten Zeitraum für Einsprüche.

Rufen Sie in der Google Cloud Console die Seite BigQuery auf.

BigQuery aufrufen

-- UDF for easier string manipulation.
CREATE TEMP FUNCTION ParseSubStr(hexStr STRING, startIndex INT64, endIndex INT64)
RETURNS STRING
LANGUAGE js
AS r"""
  if (hexStr.length < 1) {
    return hexStr;
  }
  return hexStr.substring(startIndex, endIndex);
""";

SELECT
  b.block_timestamp as block_timestamp,
  CONCAT("https://arbiscan.io/tx/", transaction_hash) AS arbiscan_txn,
  (t.value.bignumeric_value / 1000000000000000000) AS eth_withdrawn,
  CONCAT("0x", ParseSubStr(t.input, 34, LENGTH(t.input))) AS l1_destination_address,
  CASE WHEN DATETIME_DIFF(CURRENT_TIMESTAMP(), b.block_timestamp, DAY) >= 7 THEN 'True' ELSE 'False' END AS wait_period_over,
  CASE WHEN 7 - DATETIME_DIFF(CURRENT_TIMESTAMP(), b.block_timestamp, DAY) > 0 THEN 7 - DATETIME_DIFF(CURRENT_TIMESTAMP(), b.block_timestamp, DAY) ELSE 0 END AS wait_period_days_left,
FROM
  bigquery-public-data.goog_blockchain_arbitrum_one_us.transactions AS t
INNER JOIN
  bigquery-public-data.goog_blockchain_arbitrum_one_us.blocks AS b
ON
  b.block_hash = t.block_hash
WHERE
  t.to_address = LOWER("0x0000000000000000000000000000000000000064") -- ArbSys contract.
AND
  t.input LIKE "%0x25e16063%" -- withdrawEth
ORDER BY
  b.block_timestamp
DESC;
block_timestamp arbiscan_txn eth_withdrawn l1_destination_address wait_period_over wait_period_days_left
2023-10-02 23:05:26.000000 UTC https://arbiscan.io/tx/0xe6800b17c1b8161fbdf68ea2c0a913c7cc78305da4fbb1b397aa80d524550c95 0,013858051475204934 0x3a0ab56fb888159eae27f1021a0aa3bd9a73b2be Falsch 1
2023-10-02 22:55:46.000000 UTC https://arbiscan.io/tx/0x4b1695e72b80a9e0a6051f5536af56379da4ed0118364f3089ef554c4e0b2108 1.8593161561369025 0x8c35933c469406c8899882f5c2119649cd5b617f Falsch 1
2023-10-02 19:51:32.000000 UTC https://arbiscan.io/tx/0x68503fbe4aa013c09e653efaf01586957b9b07a6b3479713c083283eba12b0ac 0,31 0x641763fb275dd3418012ee26591a9898360e9d69 Falsch 1
2023-10-02 17:32:50.000000 UTC https://arbiscan.io/tx/0x683da04b6b4a81c05176128cccbef71ae5d65122d5a52abb65a70107f8101c6c 0,13967551424971486 0x38e69da3f8003c41a7b5e9e5f0a060c6f18215a1 Wahr 0