immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
44.56k stars 2.17k forks source link

[BUG] JPEG without extension cannot be uploaded (DJI Fly App Photos) #2719

Closed Domi10203 closed 7 months ago

Domi10203 commented 1 year ago

The bug

Every time I safe a photo from the DJI Fly App to my gallery this photo can´t be uploaded. In the Immich-App for IOS under the backup section stands Failed (x amount of pictures)

When I look what´s the problem there stands "Bad Request"

The OS that Immich Server is running on

Debian 11

Version of Immich Server

v1.60.0

Version of Immich Mobile App

v1.60.0 build.100

Platform with the issue

Your docker-compose.yml content

version: "3.3"

services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:release
    command: ["start-server.sh"]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    depends_on:
      - redis
      - database
      - typesense
    restart: always

  immich-microservices:
    container_name: immich_microservices
    image: ghcr.io/immich-app/immich-server:release
    command: ["start-microservices.sh"]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    depends_on:
      - redis
      - database
      - typesense
    restart: always

  immich-machine-learning:
    container_name: immich_machine_learning
    image: ghcr.io/immich-app/immich-machine-learning:release
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - model-cache:/cache
    env_file:
      - .env
    restart: always

  immich-web:
    container_name: immich_web
    image: ghcr.io/immich-app/immich-web:release
    env_file:
      - .env
    restart: always

  typesense:
    container_name: immich_typesense
    image: typesense/typesense:0.24.0
    environment:
      - TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
      - TYPESENSE_DATA_DIR=/data
    logging:
      driver: none
    volumes:
      - tsdata:/data
    restart: always

  redis:
    container_name: immich_redis
    image: redis:6.2
    restart: always

  database:
    container_name: immich_postgres
    image: postgres:14
    env_file:
      - .env
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      PG_DATA: /var/lib/postgresql/data
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always

  immich-proxy:
    container_name: immich_proxy
    image: ghcr.io/immich-app/immich-proxy:release
    environment:
      # Make sure these values get passed through from the env file
      - IMMICH_SERVER_URL
      - IMMICH_WEB_URL
    ports:
      - 2283:8080
    depends_on:
      - immich-server
    restart: always

volumes:
  pgdata:
  model-cache:
  tsdata:

Your .env content

###################################################################################
# Database
###################################################################################

# NOTE: The following four database variables support Docker secrets by adding a *_FILE suffix to the variable name
# See the docker-compose documentation on secrets for additional details: https://docs.docker.com/compose/compose-file/compose-file-v3/#secrets
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_PASSWORD=passwort
DB_DATABASE_NAME=immich

# Optional Database settings:
# DB_PORT=5432

###################################################################################
# Redis
###################################################################################

REDIS_HOSTNAME=immich_redis

# REDIS_URL will be used to pass custom options to ioredis.
# Example for Sentinel
# {"sentinels":[{"host":"redis-sentinel-node-0","port":26379},{"host":"redis-sentinel-node-1","port":26379},{"host":"redis-sentinel-node-2","port":26379}],"name":"redis-sentinel"}
# REDIS_URL=ioredis://eyJzZW50aW5lbHMiOlt7Imhvc3QiOiJyZWRpcy1zZW50aW5lbDEiLCJwb3J0IjoyNjM3OX0seyJob3N0IjoicmVkaXMtc2VudGluZWwyIiwicG9ydCI6MjYzNzl9XSwibmFtZSI6Im15bWFzdGVyIn0=

# Optional Redis settings:

# Note: these parameters are not automatically passed to the Redis Container
# to do so, please edit the docker-compose.yml file as well. Redis is not configured
# via environment variables, only redis.conf or the command line

# REDIS_PORT=6379
# REDIS_DBINDEX=0
# REDIS_USERNAME=
# REDIS_PASSWORD=
# REDIS_SOCKET=

###################################################################################
# Upload File Location
#
# This is the location where uploaded files are stored.
###################################################################################

UPLOAD_LOCATION=/backup

###################################################################################
# Typesense
###################################################################################
TYPESENSE_API_KEY=h7f65kf0485
# TYPESENSE_ENABLED=false
# TYPESENSE_URL uses base64 encoding for the nodes json.
# Example JSON that was used:
# [
#      { 'host': 'typesense-1.example.net', 'port': '443', 'protocol': 'https' },
#      { 'host': 'typesense-2.example.net', 'port': '443', 'protocol': 'https' },
#      { 'host': 'typesense-3.example.net', 'port': '443', 'protocol': 'https' },
#  ]
# TYPESENSE_URL=ha://WwogICAgeyAnaG9zdCc6ICd0eXBlc2Vuc2UtMS5leGFtcGxlLm5ldCcsICdwb3J0JzogJzQ0MycsICdwcm90b2NvbCc6ICdodHRwcycgfSwKICAgIHsgJ2hvc3QnOiAndHlwZXNlbnNlLTIuZXhhbXBsZS5uZXQnLCAncG9ydCc6ICc0NDMnLCAncHJvdG9jb2wnOiAnaHR0cHMnIH0sCiA>

###################################################################################
# Reverse Geocoding
#
# Reverse geocoding is done locally which has a small impact on memory usage
# This memory usage can be altered by changing the REVERSE_GEOCODING_PRECISION variable
# This ranges from 0-3 with 3 being the most precise
# 3 - Cities > 500 population: ~200MB RAM
# 2 - Cities > 1000 population: ~150MB RAM
# 1 - Cities > 5000 population: ~80MB RAM
# 0 - Cities > 15000 population: ~40MB RAM
####################################################################################

# DISABLE_REVERSE_GEOCODING=false
# REVERSE_GEOCODING_PRECISION=3

####################################################################################
# WEB - Optional
#
# Custom message on the login page, should be written in HTML form.
# For example:
# PUBLIC_LOGIN_PAGE_MESSAGE="This is a demo instance of Immich.<br><br>Email: <i>demo@demo.de</i><br>Password: <i>demo</i>"
####################################################################################

PUBLIC_LOGIN_PAGE_MESSAGE=

####################################################################################
# Alternative Service Addresses - Optional
#
# This is an advanced feature for users who may be running their immich services on different hosts.
# It will not change which address or port that services bind to within their containers, but it will change where other services look for their peers.
# Note: immich-microservices is bound to 3002, but no references are made
####################################################################################

IMMICH_WEB_URL=http://immich-web:3000
IMMICH_SERVER_URL=http://immich-server:3001
IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003

####################################################################################
# Alternative API's External Address - Optional
#
# This is an advanced feature used to control the public server endpoint returned to clients during Well-known discovery.
# You should only use this if you want mobile apps to access the immich API over a custom URL. Do not include trailing slash.
# NOTE: At this time, the web app will not be affected by this setting and will continue to use the relative path: /api
# Examples: http://localhost:3001, http://immich-api.example.com, etc
####################################################################################

#IMMICH_API_URL_EXTERNAL=http://localhost:3001

Reproduction steps

1. Shoot a photo with my drone
2. Download that to my gallery from the App
3. Open Immich-App
4. Due to automatic backup all my photos get uploaded exept for them which come from the DJI Fly APP

Additional information

No response

alextran1502 commented 1 year ago

Do you have a file that you can share so we can troubleshoot?

Domi10203 commented 1 year ago

Of course I hope the metadata is the same as on my Phone. 4a4b97aaa80e1e008c31f47e2161daaa_exif

alextran1502 commented 1 year ago

I can upload this from the web. Can you verify the original file format?

Domi10203 commented 1 year ago

dji_fly_20230609_213508_90_1686339568484_photo_optimized This is a Photo directy shared from the iOS gallery. From the Web I can upload it too but not automatically with the mobile app. Thats the error message (in german sorry) IMG_2669 IMG_2670

alextran1502 commented 1 year ago

I don't think I have the original file from the picture you posted. image

Can you either check the server log or get me the original file?

Domi10203 commented 1 year ago

where I can check the server log 😬

alextran1502 commented 1 year ago

Ah you can run docker logs immich_server

Domi10203 commented 1 year ago

That came a couple of times:

Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close at new NodeError (node:internal/errors:399:5) at onclose (node:internal/streams/end-of-stream:154:30) at process.processTicksAndRejections (node:internal/process/task_queues:77:11) [Nest] 1 - 06/10/2023, 7:21:44 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:21:50 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:21:52 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:21:55 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:21:57 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:00 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:01 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:02 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:03 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:04 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:05 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:05 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:06 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:14 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:15 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:16 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:17 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:18 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:18 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:19 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:20 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:21 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:22:22 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport [Nest] 1 - 06/10/2023, 7:24:25 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport

alextran1502 commented 1 year ago

[Nest] 1 - 06/10/2023, 7:21:44 PM ERROR [AssetUploadConfig] Unsupported file type file MIME type unsupport/unsupport

This would do, so the server reject the file because of the unsupported file type. If you can help me get the original files I can test and help integrate supporting this file type

uhthomas commented 1 year ago

This could be resolved by #2824 if Immich were to sniff the content type for files without a valid extension.

jrasm91 commented 1 year ago

Is this still an issue? I think it may be resolved now as we've changed our logic to use file extensions instead of mime types. If this is still an issue, we can reopen once we have more deals about the unsupported file type.

uhthomas commented 1 year ago

@jrasm91 I believe this is still an issue as the file does not have an extension.

Domi10203 commented 1 year ago

It is still not possible to Upload the file from my Phone (iOS). If I copy it over to PC an can upload it from the Web Ui.

I don‘t how to copy exactly this image so you can test.

Cantello commented 1 year ago

Having the same problem with photos from dji and I was wondering if the sole problem is that the photos are saved into the iOS photo roll without an extension? I checked in iOS photos and on iCloud, when exporting from there, the photos are saved with an extension, probably due to the export. However, all photos that are listed as 'unsupported filetype' have already been imported into Immich somehow and yet the iOS client tries to upload them again and fails. I could delete the offending photos but I cannot verify if the photos that fail to upload are the same as the ones that are already there as I cannot seem to get the image IC of any photo on iOS.

Any ideas?

Uberpainer commented 10 months ago

I get same error "Bad Request" in the mobile app when trying to backup some old pictures from April 2016, from my mobile.

My log does not really provide any usefull information though, should I look anywhere else for better being able to pride som better information?

[Nest] 7 - 10/23/2023, 7:20:38 PM LOG [AuditService] Found 39023 original files, 54818 thumbnails, 9223 encoded videos, 0 profile files [Nest] 7 - 10/23/2023, 7:20:38 PM LOG [AuditService] Found 39023 original files, 54820 thumbnails, 9223 encoded videos, 0 profile files [Nest] 7 - 10/23/2023, 7:20:38 PM LOG [CommunicationRepository] Client qrUVAW6_IhtoMN_BAAE5 disconnected from Websocket [Nest] 7 - 10/23/2023, 7:20:38 PM LOG [CommunicationRepository] New websocket connection: bwOmLlwUuYUI6x1hAAE7 [Nest] 7 - 10/23/2023, 7:21:02 PM LOG [CommunicationRepository] New websocket connection: 1GGGOnL-FkgRU8VxAAE9 [Nest] 7 - 10/23/2023, 7:21:03 PM LOG [CommunicationRepository] New websocket connection: IUrNKQF1fJbazqmAAE [Nest] 7 - 10/23/2023, 7:21:16 PM LOG [CommunicationRepository] Client IUrNKQF1fJbazqmAAE disconnected from Websocket [Nest] 7 - 10/23/2023, 7:21:19 PM LOG [CommunicationRepository] Client 1GGGOnL-FkgRU8VxAAE9 disconnected from Websocket [Nest] 7 - 10/23/2023, 7:21:23 PM LOG [AuditService] Found 39472 assets, 2 users, 2608 people [Nest] 7 - 10/23/2023, 7:21:24 PM LOG [AuditService] Found 39472 assets, 2 users, 2608 people [Nest] 7 - 10/23/2023, 7:24:10 PM LOG [CommunicationRepository] New websocket connection: 2Y7Za3Y8xpVRQIX9AAFB [Nest] 7 - 10/23/2023, 7:24:10 PM LOG [CommunicationRepository] Client 2Y7Za3Y8xpVRQIX9AAFB disconnected from Websocket [Nest] 7 - 10/23/2023, 7:24:13 PM LOG [CommunicationRepository] New websocket connection: p2liJKeCv0vsJ93lAAFD [Nest] 7 - 10/23/2023, 7:24:13 PM LOG [CommunicationRepository] New websocket connection: ZJOuOWdx0nZRyXK8AAFF [Nest] 7 - 10/23/2023, 7:24:50 PM LOG [CommunicationRepository] Client ZJOuOWdx0nZRyXK8AAFF disconnected from Websocket [Nest] 7 - 10/23/2023, 7:24:52 PM LOG [CommunicationRepository] Client p2liJKeCv0vsJ93lAAFD disconnected from Websocket

skmgocom commented 9 months ago

I have same issue with my iphone15 Pro, it's stopped there as say "bad request", log is below for you reference.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Mon Nov 27 13:46:24 EST 2023 on pts/0 root@data:~# docker logs immich_server [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [NestFactory] Starting Nest application... [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] TypeOrmModule dependencies initialized +110ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] BullModule dependencies initialized +1ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] ConfigHostModule dependencies initialized +1ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] DiscoveryModule dependencies initialized +1ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] ScheduleModule dependencies initialized +0ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] ConfigModule dependencies initialized +15ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] BullModule dependencies initialized +0ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] ScheduleModule dependencies initialized +0ms [Nest] 7 - 11/27/2023, 6:51:30 PM LOG [InstanceLoader] BullModule dependencies initialized +1ms [Nest] 7 - 11/27/2023, 6:51:32 PM LOG [InstanceLoader] TypeOrmCoreModule dependencies initialized +1843ms [Nest] 7 - 11/27/2023, 6:51:32 PM LOG [InstanceLoader] TypeOrmModule dependencies initialized +0ms [Nest] 7 - 11/27/2023, 6:51:32 PM LOG [InstanceLoader] TypeOrmModule dependencies initialized +1ms [Nest] 7 - 11/27/2023, 6:51:32 PM LOG [InstanceLoader] InfraModule dependencies initialized +6ms [Nest] 7 - 11/27/2023, 6:51:32 PM LOG [InstanceLoader] AppModule dependencies initialized +16ms [Nest] 7 - 11/27/2023, 6:51:32 PM LOG [InstanceLoader] DomainModule dependencies initialized +35ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] ActivityController {/api/activity}: +313ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/activity, GET} route +7ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/activity/statistics, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/activity, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/activity/:id, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AssetsController {/api/assets}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/assets, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AssetController {/api/asset}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/map-marker, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/memory-lane, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/random, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/download/info, POST} route +2ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/download/archive, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/download/:id, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/statistics, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/time-buckets, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/time-bucket, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/jobs, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/restore, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/trash/empty, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/trash/restore, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/stack/parent, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/:id, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AssetController {/api/asset}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/upload, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/file/:id, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/thumbnail/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/curated-objects, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/curated-locations, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/search-terms, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/:deviceId, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/assetById/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/exist, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/asset/bulk-upload-check, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AppController {/api}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/.well-known/immich, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/custom.css, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/refresh-config, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AlbumController {/api/album}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/count, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id, PATCH} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id/assets, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id/assets, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id/users, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/album/:id/user/:userId, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] APIKeyController {/api/api-key}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/api-key, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/api-key, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/api-key/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/api-key/:id, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/api-key/:id, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AuditController {/api/audit}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/audit/deletes, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/audit/file-report, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/audit/file-report/checksum, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/audit/file-report/fix, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] AuthController {/api/auth}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/login, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/admin-sign-up, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/devices, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/devices, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/devices/:id, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/validateToken, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/change-password, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/auth/logout, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] JobController {/api/jobs}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/jobs, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/jobs/:id, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] LibraryController {/api/library}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library/:id, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library/:id, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library/:id/statistics, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library/:id/scan, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/library/:id/removeOffline, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] OAuthController {/api/oauth}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/oauth/mobile-redirect, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/oauth/config, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/oauth/authorize, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/oauth/callback, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/oauth/link, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/oauth/unlink, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] PartnerController {/api/partner}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/partner, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/partner/:id, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/partner/:id, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/partner/:id, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] SearchController {/api/search}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/search/person, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/search, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/search/explore, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] ServerInfoController {/api/server-info}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/ping, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/version, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/features, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/theme, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/config, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/statistics, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/server-info/media-types, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] SharedLinkController {/api/shared-link}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link/me, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link/:id, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link/:id, PATCH} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link/:id, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link/:id/assets, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/shared-link/:id/assets, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] SystemConfigController {/api/system-config}: +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/system-config, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/system-config/defaults, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/system-config, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/system-config/storage-template-options, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/system-config/map/style.json, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] TagController {/api/tag}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag, POST} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag/:id, PATCH} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag/:id, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag/:id/assets, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag/:id/assets, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/tag/:id/assets, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] UserController {/api/user}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/info/:id, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/me, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/profile-image, DELETE} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/:id, DELETE} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/:id/restore, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/profile-image, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/user/profile-image/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RoutesResolver] PersonController {/api/person}: +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person, PUT} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person/:id, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person/:id, PUT} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person/:id/statistics, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person/:id/thumbnail, GET} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person/:id/assets, GET} route +1ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [RouterExplorer] Mapped {/api/person/:id/merge, POST} route +0ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [SearchService] Running bootstrap [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [TypesenseRepository] Creating schema: assets/assets-v10 [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [TypesenseRepository] Creating schema: albums/albums-v2 [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [TypesenseRepository] Creating schema: faces/faces-v1 [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [TypesenseRepository] Alias mapping: [] [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [TypesenseRepository] Collections needing migration: {"assets":true,"albums":true,"faces":true} [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [AppService] Feature Flags: { "clipEncode": true, "facialRecognition": true, "tagImage": true, "map": true, "reverseGeocoding": true, "sidecar": true, "search": true, "trash": true, "oauth": false, "oauthAutoLaunch": false, "passwordLogin": true, "configFile": false } [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [NestApplication] Nest application successfully started +22ms [Nest] 7 - 11/27/2023, 6:51:33 PM LOG [ImmichServer] Immich Server is listening on http://[::1]:3001 [v1.88.2] [PRODUCTION] [Nest] 7 - 11/27/2023, 6:54:01 PM LOG [CommunicationRepository] Websocket Connect: TencSX-ValGP3C_hAAAB [Nest] 7 - 11/27/2023, 6:55:25 PM LOG [CommunicationRepository] Websocket Disconnect: TencSX-ValGP3C_hAAAB [Nest] 7 - 11/27/2023, 6:56:37 PM LOG [CommunicationRepository] Websocket Connect: 2LTZG1l60K165jwQAAAD [Nest] 7 - 11/27/2023, 6:56:37 PM ERROR [CommunicationRepository] Websocket connection error: UnauthorizedException: Invalid user token UnauthorizedException: Invalid user token at AuthService.validateUserToken (/usr/src/app/dist/domain/auth/auth.service.js:333:15) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async CommunicationRepository.handleConnection (/usr/src/app/dist/infra/repositories/communication.repository.js:30:26) [Nest] 7 - 11/27/2023, 6:56:37 PM LOG [CommunicationRepository] Websocket Disconnect: 2LTZG1l60K165jwQAAAD [Nest] 7 - 11/27/2023, 6:57:04 PM LOG [CommunicationRepository] Websocket Connect: MBstBfxvsoFXapXeAAAF [Nest] 7 - 11/27/2023, 6:57:53 PM LOG [CommunicationRepository] Websocket Disconnect: MBstBfxvsoFXapXeAAAF [Nest] 7 - 11/27/2023, 6:58:07 PM LOG [CommunicationRepository] Websocket Connect: sldFFnizpIeYAZUrAAAH [Nest] 7 - 11/27/2023, 6:58:25 PM LOG [CommunicationRepository] Websocket Disconnect: sldFFnizpIeYAZUrAAAH [Nest] 7 - 11/27/2023, 6:58:43 PM LOG [CommunicationRepository] Websocket Connect: SYS9QATmmhOTw6NVAAAJ [Nest] 7 - 11/27/2023, 6:58:45 PM LOG [CommunicationRepository] Websocket Disconnect: SYS9QATmmhOTw6NVAAAJ [Nest] 7 - 11/27/2023, 6:58:53 PM LOG [CommunicationRepository] Websocket Connect: ePnJ2tsVTESazoUIAAAL [Nest] 7 - 11/27/2023, 6:59:13 PM LOG [CommunicationRepository] Websocket Connect: U4vDfxzV26Ovk2_yAAAN [Nest] 7 - 11/27/2023, 7:14:56 PM LOG [CommunicationRepository] Websocket Disconnect: U4vDfxzV26Ovk2_yAAAN [Nest] 7 - 11/27/2023, 7:14:57 PM LOG [CommunicationRepository] Websocket Connect: Kc38ZGWGtSJvsjALAAAP [Nest] 7 - 11/27/2023, 7:15:12 PM LOG [CommunicationRepository] Websocket Disconnect: Kc38ZGWGtSJvsjALAAAP [Nest] 7 - 11/27/2023, 7:15:13 PM LOG [CommunicationRepository] Websocket Connect: irpD6AtFTyVk-K35AAAR [Nest] 7 - 11/27/2023, 7:15:27 PM ERROR [AssetService] Unable to send file: Error Error: write EPIPE at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16) [Nest] 7 - 11/27/2023, 7:15:46 PM ERROR [AssetService] Unable to send file: Error Error: write EPIPE at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16) [Nest] 7 - 11/27/2023, 7:15:47 PM ERROR [AssetService] Unable to send file: Error Error: write EPIPE at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16) [Nest] 7 - 11/27/2023, 7:15:56 PM ERROR [AssetService] Unable to send file: Error Error: write EPIPE at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16) [Nest] 7 - 11/27/2023, 7:16:01 PM ERROR [AssetService] Unable to send file: Error Error: write EPIPE at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16) [Nest] 7 - 11/27/2023, 7:17:10 PM LOG [CommunicationRepository] Websocket Disconnect: ePnJ2tsVTESazoUIAAAL [Nest] 7 - 11/27/2023, 7:17:12 PM LOG [CommunicationRepository] Websocket Connect: QoAhiXDQKUpQR3-hAAAT [Nest] 7 - 11/27/2023, 7:17:56 PM LOG [CommunicationRepository] Websocket Connect: 5FysUIEBi_PIGZetAAAV [Nest] 7 - 11/27/2023, 7:18:36 PM LOG [CommunicationRepository] Websocket Disconnect: 5FysUIEBi_PIGZetAAAV [Nest] 7 - 11/27/2023, 7:19:26 PM LOG [CommunicationRepository] Websocket Disconnect: irpD6AtFTyVk-K35AAAR [Nest] 7 - 11/27/2023, 7:19:27 PM LOG [CommunicationRepository] Websocket Connect: B6FI4d8ebIzJgQqHAAAX [Nest] 7 - 11/27/2023, 7:22:09 PM LOG [CommunicationRepository] Websocket Disconnect: QoAhiXDQKUpQR3-hAAAT [Nest] 7 - 11/27/2023, 7:22:17 PM LOG [CommunicationRepository] Websocket Disconnect: B6FI4d8ebIzJgQqHAAAX [Nest] 7 - 11/27/2023, 7:25:29 PM LOG [CommunicationRepository] Websocket Connect: Q2Dl5vDP9EJalsw-AAAZ [Nest] 7 - 11/27/2023, 7:25:49 PM LOG [CommunicationRepository] Websocket Connect: pC9WtihMKS-_ByEMAAAb [Nest] 7 - 11/27/2023, 7:26:10 PM LOG [CommunicationRepository] Websocket Disconnect: Q2Dl5vDP9EJalsw-AAAZ [Nest] 7 - 11/27/2023, 7:26:10 PM LOG [CommunicationRepository] Websocket Connect: 4roJibeoZ19bRArxAAAd [Nest] 7 - 11/27/2023, 7:26:55 PM LOG [CommunicationRepository] Websocket Connect: XdhZfyigjJOMD2iKAAAf [Nest] 7 - 11/27/2023, 7:27:11 PM WARN [AuthService] Failed login attempt for user kris@ixdeal.con from ip address ::ffff:192.168.2.209 [Nest] 7 - 11/27/2023, 7:27:15 PM WARN [AuthService] Failed login attempt for user kris@ixdeal.con from ip address ::ffff:192.168.2.209 [Nest] 7 - 11/27/2023, 7:27:19 PM WARN [AuthService] Failed login attempt for user kris@ixdeal.com from ip address ::ffff:192.168.2.209 [Nest] 7 - 11/27/2023, 7:28:15 PM LOG [CommunicationRepository] Websocket Disconnect: XdhZfyigjJOMD2iKAAAf [Nest] 7 - 11/27/2023, 7:32:23 PM LOG [CommunicationRepository] Websocket Connect: STJtGbF9JHC_NozvAAAh [Nest] 7 - 11/27/2023, 7:32:46 PM LOG [CommunicationRepository] Websocket Disconnect: STJtGbF9JHC_NozvAAAh [Nest] 7 - 11/27/2023, 7:32:51 PM LOG [CommunicationRepository] Websocket Connect: sWNJj3hDc0AifISMAAAj [Nest] 7 - 11/27/2023, 7:33:00 PM LOG [CommunicationRepository] Websocket Disconnect: sWNJj3hDc0AifISMAAAj [Nest] 7 - 11/27/2023, 7:33:05 PM LOG [CommunicationRepository] Websocket Connect: PKzbe33a9DMrz7HDAAAl [Nest] 7 - 11/27/2023, 7:33:14 PM LOG [CommunicationRepository] Websocket Disconnect: PKzbe33a9DMrz7HDAAAl [Nest] 7 - 11/27/2023, 7:36:01 PM ERROR [AssetService] Unsupported file type 21.pic [Nest] 7 - 11/27/2023, 7:41:14 PM ERROR [AssetService] Unsupported file type 21.pic

mertalev commented 7 months ago

I think we decided against adding file type sniffing because it adds complexity, so the solution to this issue is to make sure these images have extensions. The last comment here is also not the same issue since it's about files with .pic

lqu3j commented 4 months ago

I think we decided against adding file type sniffing because it adds complexity, so the solution to this issue is to make sure these images have extensions. The last comment here is also not the same issue since it's about files with .pic

.pic unsupported causing upload blocking, Are there any plans for support or optimization?