blockscout / frontend

Front-end application for Blockscout
https://blockscout.com
GNU General Public License v3.0
181 stars 474 forks source link

file download failed at run-time #1206

Closed jasonzysun closed 1 year ago

jasonzysun commented 1 year ago

Description

When I start the latest frontend, it will download the external assets, but always meet random file download failed, which cause that it can't start successfully. Some logs as following:

Downloading external assets... [+] Downloaded NEXT_PUBLIC_MARKETPLACE_CONFIG_URL to ./public/assets/marketplace_config.json successfully. [-] Failed to download NEXT_PUBLIC_FEATURED_NETWORKS from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/featured-networks/qitmeer-testnet.json. [+] Downloaded NEXT_PUBLIC_FOOTER_LINKS to ./public/assets/footer_links.json successfully. [-] Failed to download NEXT_PUBLIC_NETWORK_LOGO from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/network-logos/qitmeer-testnet-logo.svg. [.] Environment variable NEXT_PUBLIC_NETWORK_LOGO_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_NETWORK_ICON to ./public/assets/network_icon.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_ICON_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_AD_CUSTOM_CONFIG_URL to ./public/assets/ad_custom_config.json successfully

Downloading external assets... [-] Failed to download NEXT_PUBLIC_MARKETPLACE_CONFIG_URL from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/marketplace/qitmeer.json. [+] Downloaded NEXT_PUBLIC_FEATURED_NETWORKS to ./public/assets/featured_networks.json successfully. [+] Downloaded NEXT_PUBLIC_FOOTER_LINKS to ./public/assets/footer_links.json successfully. [+] Downloaded NEXT_PUBLIC_NETWORK_LOGO to ./public/assets/network_logo.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_LOGO_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_NETWORK_ICON to ./public/assets/network_icon.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_ICON_DARK is not set. Skipping download. [-] Failed to download NEXT_PUBLIC_AD_CUSTOM_CONFIG_URL from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/ad-custom-config/qitmeer.json.

Link to the page

https://testnet-qng.qitmeer.io

Steps to reproduce

  1. Build docker with the latest version and start
  2. It will download the external assets, but always meet random file download failed, which cause that it can't start successfully.

App version

v1.11.1

Browser

Microsoft Edge

Operating system

Windows

Additional information

No response

tom2drum commented 1 year ago

@jasonzysun Could you provide a full list of ENV variables with which you are trying to start the app?

jasonzysun commented 1 year ago
# Set of ENVs for local network explorer
# frontend app URL - https://localhost:3000/
# API URL - https://localhost:3001/

# app configuration
NEXT_PUBLIC_APP_PROTOCOL=https
NEXT_PUBLIC_APP_HOST=testnet-qng.qitmeer.io
NEXT_PUBLIC_APP_PORT=3000

# blockchain parameters
NEXT_PUBLIC_NETWORK_NAME=Qitmeer Network Testnet
NEXT_PUBLIC_NETWORK_SHORT_NAME=meertest
NEXT_PUBLIC_NETWORK_ID=8131
NEXT_PUBLIC_NETWORK_CURRENCY_NAME=Qitmeer Testnet
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL=MEER-T
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS=18
NEXT_PUBLIC_NETWORK_VERIFICATION_TYPE=validation
NEXT_PUBLIC_NETWORK_RPC_URL=https://testnet-qng.rpc.qitmeer.io
NEXT_PUBLIC_IS_TESTNET=true

# api configuration
NEXT_PUBLIC_API_BASE_PATH=/
NEXT_PUBLIC_API_HOST=testnet-qng.qitmeer.io
NEXT_PUBLIC_API_PROTOCOL=https
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL=wss

# ui config
## homepage
NEXT_PUBLIC_HOMEPAGE_CHARTS=['daily_txs']
NEXT_PUBLIC_HOMEPAGE_PLATE_TEXT_COLOR=rgb(255, 255, 255)
NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND=linear-gradient(104.45deg, rgba(229, 59, 255, 0.95) 0%, rgba(17, 242, 190, 0.95) 100%)
NEXT_PUBLIC_HOMEPAGE_SHOW_GAS_TRACKER=true
NEXT_PUBLIC_HOMEPAGE_SHOW_AVG_BLOCK_TIME=true

## sidebar
NEXT_PUBLIC_FEATURED_NETWORKS=https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/featured-networks/qitmeer-testnet.json
NEXT_PUBLIC_NETWORK_LOGO=https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/network-logos/qitmeer-testnet-logo.svg
NEXT_PUBLIC_NETWORK_ICON=https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/network-icons/qitmeer-testnet-icon.svg
NEXT_PUBLIC_OTHER_LINKS=[{'text': 'Qitmeer Website','url': 'https://www.qitmeer.io/'},{'text': 'Faucet','url': 'https://faucet.qitmeer.io'},{'text': 'DimAI','url': 'https://www.dimai.ai'}]
## footer
NEXT_PUBLIC_FOOTER_LINKS=https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/footer-links/qitmeer.json
## favicon
NEXT_PUBLIC_FAVICON_GENERATOR_API_KEY=a102298c0f49ac9c3e6453e1249aa11200978583
## views
# block views
NEXT_PUBLIC_VIEWS_BLOCK_HIDDEN_FIELDS=['total_reward']
## misc
# NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Qitmeer','baseUrl':'https://qng.qitmeer.io','paths':{'tx':'/tx','address':'/address'}}]

# app features
# NEXT_PUBLIC_APP_INSTANCE=
# NEXT_PUBLIC_APP_ENV=
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_STATS_API_HOST=https://testnet-qng.stats.qitmeer.io
NEXT_PUBLIC_VISUALIZE_API_HOST=https://testnet-qng.visualize.qitmeer.io
NEXT_PUBLIC_WEB3_WALLETS=['metamask','coinbase','token_pocket']
# NEXT_PUBLIC_CONTRACT_INFO_API_HOST=
# NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=
# NEXT_PUBLIC_AUTH_URL=
# NEXT_PUBLIC_LOGOUT_URL=

# Banner ads
NEXT_PUBLIC_AD_TEXT_PROVIDER=none
NEXT_PUBLIC_AD_BANNER_PROVIDER=custom
# NEXT_PUBLIC_AD_ADBUTLER_CONFIG_DESKTOP=
# NEXT_PUBLIC_AD_ADBUTLER_CONFIG_MOBILE=
NEXT_PUBLIC_AD_CUSTOM_CONFIG_URL=https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/ad-custom-config/qitmeer.json

# Marketplace
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL=https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/marketplace/qitmeer.json
NEXT_PUBLIC_MARKETPLACE_SUBMIT_FORM=https://www.qitmeer.io

@tom2drum

tom2drum commented 1 year ago

Hi @jasonzysun. I was not able to reproduce this locally. Everything seems to work fine.

Here is my log output

yarn run v1.22.19 $ ./tools/scripts/dev.preset.sh main ⬇️ Downloading external assets... [+] Downloaded NEXT_PUBLIC_MARKETPLACE_CONFIG_URL from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/marketplace/qitmeer.json to ./public/assets/marketplace_config.json successfully. [+] Downloaded NEXT_PUBLIC_FEATURED_NETWORKS from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/featured-networks/qitmeer-testnet.json to ./public/assets/featured_networks.json successfully. [+] Downloaded NEXT_PUBLIC_FOOTER_LINKS from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/footer-links/qitmeer.json to ./public/assets/footer_links.json successfully. [+] Downloaded NEXT_PUBLIC_NETWORK_LOGO from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/network-logos/qitmeer-testnet-logo.svg to ./public/assets/network_logo.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_LOGO_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_NETWORK_ICON from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/network-icons/qitmeer-testnet-icon.svg to ./public/assets/network_icon.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_ICON_DARK is not set. Skipping download. [.] Environment variable NEXT_PUBLIC_OG_IMAGE_URL is not set. Skipping download. ✅ Done.

That's weird that part of your assets were downloaded and part of them not, though they are placed next to each other.

jasonzysun commented 1 year ago

As two of my logs output show as following: the same asset had been downloaded successfully sometimes and failed other time. I'm not sure if it's related to the internet.

Downloading external assets... [+] Downloaded NEXT_PUBLIC_MARKETPLACE_CONFIG_URL to ./public/assets/marketplace_config.json successfully. [-] Failed to download NEXT_PUBLIC_FEATURED_NETWORKS from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/featured-networks/qitmeer-testnet.json. [+] Downloaded NEXT_PUBLIC_FOOTER_LINKS to ./public/assets/footer_links.json successfully. [-] Failed to download NEXT_PUBLIC_NETWORK_LOGO from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/network-logos/qitmeer-testnet-logo.svg. [.] Environment variable NEXT_PUBLIC_NETWORK_LOGO_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_NETWORK_ICON to ./public/assets/network_icon.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_ICON_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_AD_CUSTOM_CONFIG_URL to ./public/assets/ad_custom_config.json successfully

Downloading external assets... [-] Failed to download NEXT_PUBLIC_MARKETPLACE_CONFIG_URL from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/marketplace/qitmeer.json. [+] Downloaded NEXT_PUBLIC_FEATURED_NETWORKS to ./public/assets/featured_networks.json successfully. [+] Downloaded NEXT_PUBLIC_FOOTER_LINKS to ./public/assets/footer_links.json successfully. [+] Downloaded NEXT_PUBLIC_NETWORK_LOGO to ./public/assets/network_logo.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_LOGO_DARK is not set. Skipping download. [+] Downloaded NEXT_PUBLIC_NETWORK_ICON to ./public/assets/network_icon.svg successfully. [.] Environment variable NEXT_PUBLIC_NETWORK_ICON_DARK is not set. Skipping download. [-] Failed to download NEXT_PUBLIC_AD_CUSTOM_CONFIG_URL from https://raw.githubusercontent.com/X2074/evm_frontend-configs/main/configs/ad-custom-config/qitmeer.json.

jasonzysun commented 1 year ago

In theory, there is no problem with the relevant code logic. Do we have a good way to solve some download failures caused by network instability?

tom2drum commented 1 year ago

I don't have any suggestions currently.