Commit Graph

18 Commits

Author SHA1 Message Date
ddf91299e7 refactor: reorganize codebase into modular packages
feat(global): add global package for shared variables and types
refactor(handlers): move handlers to dedicated package and update imports
refactor(session): extract session management to separate package
refactor(config): move config handling to dedicated package
refactor(router): update route handlers to use new package structure
refactor(main): simplify main.go by moving logic to packages
2026-04-22 12:57:04 +08:00
37c10f1c07 feat(watchdog): improve watchdog instance tracking
- Add Close() function to watchdog for graceful shutdown
- Update instance message format for better consistency
- Add watchdog status tracking in StatusInfo
- Include watchdog field in FrpcInstance struct and database
- Change port fields from string to int in FrpcProxyInfo
- Add auth_token support in InstanceInfo
2026-04-05 22:44:53 +08:00
de6a8cdcb0 fix(watchdog): refactored tcp recvMsg function, now the watchdog can be connected correctly
- Refactor TCP message reading to use ReadBytes and TrimSpace for better reliability
- Add connection success logging in main.go
- Update .gitignore to include logs.db-journal
2026-04-02 22:22:44 +08:00
78bd1cb3cc style: using is struct to handle all judgements global envs 2026-04-02 21:38:50 +08:00
aa22b04a1f feat(watchdog): add watchdog service with TCP client implementation
- Implement TCP client for watchdog service communication
- Add watchdog configuration in config.json
- Update main.go to initialize and connect to watchdog
- Add watchdog related functions (connect, command handling)
- Update README.md with new watchdog feature
- Improve route setup logging in router.go
2026-04-02 18:42:44 +08:00
839bad3c94 feat(frpLogger): add real-time instance log streaming functionality
Implement cross-platform log streaming for frpc instances with support for Windows, systemd, and init.d systems. Includes WebSocket API endpoint for real-time log streaming, token validation, and instance ownership checks. Update README and API documentation to reflect new functionality.

The implementation handles:
- Platform-specific log collection (Windows Event Log, journalctl, log files)
- WebSocket-based real-time streaming
- Token validation and instance access control
- Log level parsing and formatting
- Historical log retrieval since service start
2026-03-26 17:46:50 +08:00
33e5119b0a feat(logging): add real-time log streaming via websocket
- Implement WebSocket endpoint for streaming logs to clients
- Add log broadcaster to manage client connections and history
- Update documentation with new WebSocket API details
- Include gorilla/websocket dependency for WebSocket support
2026-03-17 19:12:15 +08:00
20ec25328d feat(logging): add database logging support and refactor logging system
- Implement new database logging functionality with separate logs database
- Refactor PostLog function to store logs in database while maintaining console output
- Add new InitLogsDatabase function and related database operations
- Update main.go to support separate database paths for data and logs
- Add logging for user creation events
2026-03-17 18:47:51 +08:00
f3fca7f07b feat(user): add createdAt field to user model
- Add createdAt field to User struct and database schema
- Update all user queries to include createdAt field
- Document new field in API documentation
- Fix server online status flag timing
2026-03-10 14:34:16 +08:00
a142fb17a8 feat(system): add system status and software info endpoints
Add new endpoints to expose system status and software information:
- /system/getStatus returns current system status (online/offline)
- /system/getSoftwareInfo returns software version and build details
Update API documentation to include new endpoints
2026-03-09 19:02:56 +08:00
e400cc1869 feat(session): add session list API
- Move token-related functions from auth.go to new session.go
- Add session tracking with expiration and cleanup
- Implement session list API endpoint
- Update login/logout handlers to use session system
- Add hourly cleanup of expired tokens and sessions
2026-03-05 18:24:19 +08:00
686c3dcd4e refactor: consolidate debug flag and update gitignore
- Rename debugMode to isDebug for consistency across codebase
- Move debug flag check in ValidateTimeStamp to match other validations
- Add database.db to gitignore and remove unused config file
- Update README.md to clarify user registration rules
2026-02-28 15:48:01 +08:00
aa70e7c0f0 refactor(api): simplify instance management endpoints
- Change delete endpoint to use request body instead of path parameter
- Modify endpoint now takes field as path parameter and instance name in body
- Update README to reflect API changes
- Remove unused description field from software info
- Fix error message in auth token lookup
2026-02-28 11:55:52 +08:00
e3b3a3aa98 feat(logging): add detailed logging throughout application components
- Implement logging in router setup, auth handlers, and frpc operations
- Add SoftwareInfo struct for version tracking and logging
- Enhance error messages with more context and logging
- Replace direct error returns with formatted error logging
- Add debug logs for token operations and request validations
2026-02-27 23:44:41 +08:00
8f711a3823 feat(handlers): add duplicate login check and improve request handling
refactor: move postLog package to root directory and enhance logging
fix(frpc): improve request parsing and type handling for instance creation
chore: update config paths and enable debug mode
2026-02-27 21:04:08 +08:00
4e472e0145 refactor(logger): add individual log module 2026-02-26 11:56:35 +08:00
d76e28a358 refactor(routor): split routor from main.go 2026-02-26 09:24:33 +08:00
934190eebf feat: implement core functionality for super-frpc service
This commit introduces the core functionality for the super-frpc service including:
- Configuration management
- User authentication and authorization
- Database integration
- FRPC instance management
- API endpoints for user operations
- Token-based authentication system
- Password hashing and validation
2026-02-23 00:19:57 +08:00