test-config.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #!/usr/bin/env node
  2. /**
  3. * 配置测试脚本
  4. * 用于验证账户配置和API连接
  5. */
  6. const fs = require('fs');
  7. const path = require('path');
  8. console.log('🔍 配置测试开始...\n');
  9. // 1. 检查配置文件
  10. console.log('📋 检查配置文件:');
  11. const configPath = path.join(__dirname, 'config', 'accounts.json');
  12. if (fs.existsSync(configPath)) {
  13. const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
  14. console.log(`✅ 账户配置文件存在`);
  15. console.log(`📊 配置的账户数量: ${config.length}`);
  16. config.forEach((account, index) => {
  17. console.log(`\n账户 ${index + 1}:`);
  18. console.log(` ID: ${account.id}`);
  19. console.log(` 名称: ${account.name}`);
  20. console.log(` 私钥: ${account.privateKey.substring(0, 10)}...`);
  21. console.log(` 地址: ${account.address}`);
  22. console.log(` 状态: ${account.isActive ? '✅ 激活' : '❌ 未激活'}`);
  23. });
  24. } else {
  25. console.log('❌ 账户配置文件不存在');
  26. }
  27. // 2. 检查环境变量
  28. console.log('\n🌍 检查环境变量:');
  29. const envVars = [
  30. 'PACIFICA_API_KEY',
  31. 'PACIFICA_BASE_URL',
  32. 'WEBSOCKET_URL',
  33. 'NODE_ENV'
  34. ];
  35. envVars.forEach(envVar => {
  36. const value = process.env[envVar];
  37. if (value) {
  38. if (envVar.includes('KEY') || envVar.includes('SECRET')) {
  39. console.log(`✅ ${envVar}: ${value.substring(0, 10)}...`);
  40. } else {
  41. console.log(`✅ ${envVar}: ${value}`);
  42. }
  43. } else {
  44. console.log(`❌ ${envVar}: 未设置`);
  45. }
  46. });
  47. // 3. 检查文件权限
  48. console.log('\n🔐 检查文件权限:');
  49. try {
  50. const stats = fs.statSync(configPath);
  51. const mode = stats.mode & parseInt('777', 8);
  52. console.log(`📁 配置文件权限: ${mode.toString(8)}`);
  53. if (mode <= parseInt('600', 8)) {
  54. console.log('✅ 文件权限安全 (仅所有者可读写)');
  55. } else {
  56. console.log('⚠️ 文件权限可能不安全,建议设置为 600');
  57. }
  58. } catch (error) {
  59. console.log('❌ 无法读取文件权限');
  60. }
  61. // 4. 检查日志目录
  62. console.log('\n📝 检查日志目录:');
  63. const logDir = path.join(__dirname, 'logs');
  64. if (fs.existsSync(logDir)) {
  65. console.log('✅ 日志目录存在');
  66. const files = fs.readdirSync(logDir);
  67. console.log(`📊 日志文件数量: ${files.length}`);
  68. } else {
  69. console.log('⚠️ 日志目录不存在,系统会自动创建');
  70. }
  71. console.log('\n🎯 配置测试完成!');
  72. console.log('\n💡 下一步:');
  73. console.log('1. 如果看到模拟私钥,请更新为真实私钥');
  74. console.log('2. 确保设置了正确的API密钥');
  75. console.log('3. 运行 npm run dev 启动系统');
  76. console.log('4. 检查日志确认连接状态');