The nice thing about ssh subsystems is that you can replace the default implementation (internal-sftp as Martin remarked) with another implementation, e.g. a wrapper script around /usr/lib/openssh/sftp-server.
A small example: create a file /usr/local/bin/sftp-logger with content:
# Create a temporary log file
Both server and client need to support resuming. https://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.2.1 The standard talked about reading/writing files at some offsets. The offsets are how resuming works. A link to some guys working on a resuming issue. https://github.com/pkg/sftp/issues/295